本题要求编写程序,对输入的一个整数,从高位开始逐位分割并输出它的各位数字。

输入格式:

输入在一行中给出一个长整型范围内的非负整数。

输出格式:

从高位开始逐位输出该整数的各位数字,每个数字后面有一个空格。

出错地方

只会逆序表达,不熟练正序表达;

循环太长,中间不必要的叙述太多,导致运行时间过长。

正确答案

#include<stdio.h>
int main()
{
    int num=0,t=0,mask=1;
    scanf("%d",&num);
    t=num;
    while(t>9)
    {
        t/=10;
        mask*=10;
    }
    while(mask>0)
    {
         printf("%d ",num/mask);
        num%=mask;
        mask/=10;
    } 
    return 0;
}

 

posted on 2020-03-15 15:45  卑微小葫芦在线爱编程  阅读(819)  评论(0编辑  收藏  举报