c语言编程 输入正整数n,求n是几位数

c语言编程
输入正整数n,求n是几位数

当你输入一个正整数n时,你需要编写一个C语言程序来确定n是几位数。这可以通过计算n的位数来实现。具体来说,你可以使用循环来将n除以10,直到n小于10为止。每次除以10时,计数器加1,最终计数器的值就是n的位数。

以下是一个简单的C语言程序,可以实现这个功能:

```
#include <stdio.h>

int main() {
int n;
int count = 0;

printf("请输入一个正整数:");
scanf("%d", &n);

while (n >= 10) {
n /= 10;
count++;
}

count++; // 加上最高位

printf("%d 是 %d 位数。\n", n, count);

return 0;
}
```

在这个程序中,我们首先声明了一个变量n来存储输入的正整数,以及一个计数器count来记录n的位数。然后,我们使用scanf函数来读取用户输入的n。接下来,我们使用一个while循环来将n除以10,直到n小于10为止。每次循环时,计数器count加1。最后,我们再将count加1,以计算最高位的位数。最后,我们使用printf函数输出n的位数。

希望这个C语言程序能够帮助你解决这个问题!
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-04-16
#include<stdio.h>
void main()
{
int n,count=1;
printf("请输入一个整数n\n");
scanf("%d",&n);
while(1==1){
int m=n/10;
if(m<1)
{
printf("n为%d位数\n",count);
break;
}
if(m>=1)
{
n=n/10;
count=count+1;
}
}
}
第2个回答  2014-04-16
#include<stdio.h>
int main()
{
int n,s=0;
scanf("%d",&n);
while(n)
{
s++;
n/=10;
}
printf("%d\n",s);
return 0;
}

本回答被提问者采纳
第3个回答  2014-04-15
mod 10,看几次以后为0
相似回答