c语言 编写程序,从键盘输入一个整数,计算并输出它是几位数。若输入的是负数时,要求重新输入。

2024-11-19 00:35:59
推荐回答(3个)
回答(1):

给你写了个,运行通过,你看看吧,记得采纳哦O(∩_∩)O~
#include
int main(){
int num,i=0;
printf("please input a numble:");
while(1){
scanf("%d",&num);
if(num<0){
printf("this numble is below to 0,please input again:");
continue;
}
while(num>0){
num/=10;
i++;
}
break;
}
printf("It's width is %d",i);
}

回答(2):

两个思路:
第一个是用int接收,然后依次进行模10运算,看能进行几次。一开始先判断是否大于0。
另一个是用char*接收,然后对每一位进行判断是否是数字,最后判断有无符号位。

回答(3):

int a,i=1;
do{
scanf("%d",&a);
}while(a<0);
while(a)
{
a/=10;
i++;
}