C语言,求这道题的思路,是要转换成字符串扫描,还是有别的方法,求解惑。
题目描述
试计算在区间 1 到 n 的所有整数中,数字 x(0≤x≤9)共出现了多少次?例如,在 1 到 11 中,即在
1,2,3,4,5,6,7,8,9,10,11 中,数字 1 出现了 4 次。
输入格式
2 个整数 n,x,之间用一个空格隔开。
输出格式
1 个整数,表示 x 出现的次数。
供参考:
#include<stdio.h>
int main()
{
int i=1,n,x,k,cnt=0;
scanf("%d%d",&n,&x);
while(i <= n)
{
k = i;
while(k)
{
if(k%10 == x) cnt++;
k /= 10;
}
i++;
}
printf("%d",cnt);
return 0;
}