C语言 编写一个程序,输入一个正整数,求出它是几位数。

来源:百度知道 编辑:UC知道 时间:2024/05/08 19:00:28
希望各位能给出详细步骤

思路:求一个正整数n的位数可以先定义一个变量num,并初始化为0,依次把该整数n除以10,直到其为0为止,并且每除一次10,变量num的个数就自加1,最后num的值就是该整数n的位数。

参考代码:

#include <stdio.h>
int main()

int n,num=0;
scanf("%d",&n);
while(n){
num++;
n/=10;
}
printf("%d\n",num);
    return 0;
}
/*
输出:
123456
6
*/

main()
{int a;
int i,N;
scanf("%d",&a);
for(i=0;a;i++)
a=a/10;
N=i;
printf("N=%d\n",N);
}

void main(){
int n,i=0;
scanf("%d",&n);
while (n!=0){
n/=10;
i++;
}
printf("the number of digits is %d\n",i);
}

如果是120005呢,中间有零呢

#include<stdio.h>
main(void)
{int n,i=1;
scanf("%d",&n);
while(n/10>0)
{i=i+1;
n=n/10;
}
printf("n是%d位数\n",i);