> 文章列表 > C技能树:判断正整数的位数

C技能树:判断正整数的位数

C技能树:判断正整数的位数

输入一个正整数,判断其一共包含多少位,请选出错误答案。

#include <stdio.h>
int main(int argc, char** argv)
{int num, count = 0;printf("请输入一个正整数:");scanf("%d", &num);(_____1_____)printf("位数为:%d", count);return 0;
}

    while (num > 0)
    {
        num %= 10;
        count++;
    }//错误

    while (num > 0)
    {
        num /= 10;
        count += 1;
    }//正确

    while (num > 0)
    {
        num = num / 10;
        count = count + 1;
    }//正确

    while (num > 0)
    {
        num /= 10;
        ++count;
    }//正确

解析:判断正整数位数通常采用/运算符,通过循环语句让正整数除10,累加被除的次数得到位数。