对5位以内的正整数处理(判断他是几位数、顺逆序输出)

输入一个五位以内的正整数

(1)判断它是一个几位数;

(2)请按序输出其各位数字;

(3)逆序输出其各位数字。

 如输入:56439,

 输出:5位数 5,6,4,3,9

void processingMethod()
{
    //顺序
    int a=0,tmp=0;
    scanf("%d",&a);
    printf("\n顺序\n");
    for (int i=5; i>=1; i--) {
        
        tmp=pow(10, i-1);
        printf("%d ",(a/tmp)%10);
    }
    getchar();
    //逆序
    printf("\n逆序\n");
    int count=0;
    while (a>0) {
        printf("%d ",a%10);
        a/=10;
        count++;
    }
    printf("\n%d位数\n",count);
}

逆序思路:对10取余数,得到最后一位数,除以10,由于是int类型,小数点后面的数被砍..重复响应操作

顺序思路:与逆序相似,只是从高位往低位取...

你可能感兴趣的:(C语言基础)