我一直试图解决这个问题,即计算数字的总数,我的代码部分工作.它适用于第一次尝试,但在第二次尝试中,计数增加了先前的计数.请帮忙.
#include<stdio.h>
int main()
{
int num,x,i,n,count=0;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
scanf("%d",&num);
while(num!=0)
{
count++;
num=num/10;
}
printf("%d\n",count);
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
您的代码有两个问题:
count,并且0有零位数第一个问题的原因之一是您不限制变量的范围,事先声明所有变量.相反,你应该在需要它们的最严格的范围内声明它们:i应该在循环头count中声明,同时应该在for循环内声明和初始化.
对零处理,添加一个特殊情况,1在输入零时打印,或切换到do/ while循环.
| 归档时间: |
|
| 查看次数: |
115 次 |
| 最近记录: |