请求出1~n中含有数字0的数,有多少个?
思路:1.首先要用循环来遍历1到n的每个数;
2.然后考虑怎样确定每位上的数是不是0——>>>这里我们可以用取模的方法——判断余数是不是0,然后再除以10,一位一位的判断
代码如下:
#include<stdio.h>
int main()
{
long long n,t,i,x,cont=0;
scanf("%lld",&n);
for(i=1;i<=n;i++)
{
x=i;
while(x) //x不为0的时候进行循环
{
t=x%10; //注意这里要先取模再除以10,顺序不能换
x=x/10;
if(t==0)
{
cont++;
break; //因为含有多个0的数只计算一次,所以要用break来结束while循环
}
}
}
printf("%lld",cont);
return 0;
}