实训:输入一个不多于5位的正整数(C语言)

Problem Description
输入一个不多于5位的正整数,编程实现以下功能(用两种方法实现):
(1)判断它是几位数
(2)分别打印每一位数字
(3)按逆序输出各位数字
(4)例如:输入2345
(5)则输出:2 3 4 5
5 4 3 2


思路
首先用if语句判断输入的数是几位数,然后分别求出每位上的数字并打印,最后将求出来的每位上的数字反序输出。


知识点
选择结构中的if语句、switch语句,循环结构中的while语句、for语句。


下面是C语言代码:

#include
int main()
{
    int x,y,s[6],i=0,j;
    scanf("%d",&x);
    if(x/10000!=0)
        y=5;
    else if(x/1000!=0)
        y=4;
    else if(x/100!=0)
        y=3;
    else if(x/10!=0)
        y=2;
    else y=1;
    printf("%d\n",y);
    while(y--)
    {
        s[i]=x%10;           //将最末位依次存到数组里面
        x=x/10;              //去掉最末位
        i++;
    }
    for(j=i-1;j>=0;j--)         //正序输出
        printf("%d ",s[j]);
    printf("\n");
    for(j=0;j//逆序输出
        printf("%d ",s[j]);
    printf("\n");
    return 0;
}

总结
实训:输入一个不多于5位的正整数(C语言)_第1张图片

你可能感兴趣的:(实训:输入一个不多于5位的正整数(C语言))