#include <stdio.h>
#include <math.h>
// 请先独立完成,如果有困难可以翻阅本书代码仓库中的答案,但一定要再次独立完成。
// “抓住主要矛盾”——始终把学习、实验的焦点集中在最有趣的部分。如果直观地解决方案行得通,就不必追究其背后的原理。
/**
【题目】数数字
把前n(n≤10000)个整数顺次写在一起:123456789101112…数一数0~9各出现多少次
(输出10个整数,分别是0,1,…,9出现的次数)。
*/
/**
【分析】运用好%号和/号
*/
int main()
{
int n;
int a[10];
memset(a,0,sizeof(a));
scanf("%d",&n);
if (n>10000 || n<0) {
printf("input error");
return;
}
int i;
for (i=1;i<=n;i++) {
int j = i;
while(j>0) {
int x = j % 10;
a[x] ++ ;
j = j / 10;
}
}
for (i = 0;i<10;i++) {
printf("%d的数量为%d\n",i,a[i]);
}
return 0;
}