这是我参考过一个帖子之后写下来的,我的变量用的不太好看,下次还是应该尽量按照元素的顺序使用。
原作者:csdn博客 synapse7
#include <stdio.h>
#include <string.h>
int ans[10005][10];
int main()
{
int n,m;
memset(ans,0,sizeof(ans));
for (int i= 1; i<10005; i++)
{
for (int j=i; j>0; j=j/10)
{
int k=j%10;
ans[i][k]++;
}
for (int p=0; p<10; p++)
ans[i][p]+=ans[i-1][p];
}
scanf ("%d",&n);
while(n--)
{
scanf ("%d",&m);
for (int d=0; d<9;d++)
{
printf ("%d ",ans[m][d]);
}
printf ("%d\n",ans[m][9]);
}
return 0;
}