输入任意一个整数,求这个整数中包含几个0
1个回答
展开全部
要求输入整型数字,那么用求余从个位开始逐位取出判断,用变量累加计数。
但这样做,得到的0的个数不包含整数前面的0,,毕竟01和1在整数上都是1。
如你想把输入内容都算进去,包括数字前面的0,那么输入的内容必须当字符串处理而不是数字。
我下面的代码是按照你问题要求,输入作为数字处理的,不包含前面的0,直接输入0计数1个。
#include<stdio.h>
int main()
{
int n,y,cnt=0;
scanf("%d",&n);
while(1)
{
if(n==0)
cnt++;
if(n<10)
break;
y=n%10;
n=n/10;
if(y==0)
cnt++;
}
printf("输入的整数包含%d个0(不包含高位0)。",cnt);
return 0;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询