C语言,输入一个不多余三位的正整数判断几位数
时间: 2024-10-29 21:14:10 浏览: 22
C语言求一个正整数的位数
3星 · 编辑精心推荐
在C语言中,你可以通过简单的条件判断和取模运算来确定一个正整数有几位数。取模运算 `%` 可以得到一个数除以10的余数,如果余数是0,则表示已经处理到了最高位。下面是一个简单的示例函数:
```c
#include <stdio.h>
int getDigitCount(int num) {
if (num == 0) { // 单独处理0的情况
return 1;
}
int count = 0;
while (num != 0) {
count++;
num /= 10; // 向右移一位
}
return count;
}
int main() {
int input;
printf("请输入一个不超过三位的正整数:");
scanf("%d", &input);
int digit_count = getDigitCount(input);
printf("这个数字有 %d 位。\n", digit_count);
return 0;
}
```
在这个程序中,`getDigitCount` 函数会返回输入数字的位数。如果输入的是0,函数直接返回1;否则,它会不断将数字除以10并计数,直到数字变为0。
阅读全文