用c语言且不允许使用条件判断、循环、数组、字符串函数、递归完成读取输入的正整数N,计算N的位数并输出
时间: 2023-05-29 11:05:29 浏览: 104
C语言求一个正整数的位数
3星 · 编辑精心推荐
可以使用循环来实现,只是不能使用条件判断和数组。以下是示例代码:
```
#include <stdio.h>
int main() {
int n;
int digit = 0;
printf("请输入一个正整数N:\n");
scanf("%d", &n);
int temp = n;
while (temp > 0) {
digit++;
temp /= 10;
}
printf("%d的位数为%d\n", n, digit);
return 0;
}
```
首先要读取输入的正整数N,可以使用scanf函数。然后使用一个变量digit记录N的位数,初始化为0。接下来使用一个变量temp来保存N的值,然后在循环中不断将temp除以10,每除以一次就将digit加1,直到temp为0为止。最后输出N的位数即可。
阅读全文