1225 - Digit Counting(书上习题3-3)

这道题不难,但是做了很久,首先可能不在状态,一开始思路不清晰,代码写得乱七八糟,改了之后,发现题目看错了,又改了改,这道题要注意输出格式。

 1 #include<stdio.h>
 2 #include<string.h>
 3 #include<math.h>
 4 int s[10000];
 5 int main()
 6 {
 7     int n;
 8     scanf("%d",&n);
 9     for(int i=0; i<n; i++)
10     {
11         memset(s,0,sizeof(s));
12         int x;
13         scanf("%d",&x);
14 
15         for(int k=1; k<=x; k++)
16         {
17             if(k/10==0)
18                 s[k]++;
19             else
20             {
21                 int p=k; //开始这里错了
22                while(p!=0)
23               {
24                 s[p%10]++;
25                 p/=10;
26               }
27             }
28         }
29 
30         printf("%d",s[0]);
31         for(int j=1; j<10; j++)
32             printf(" %d",s[j]);
33         printf("\n");
34     }
35     return 0;
36 }

 

posted @ 2015-12-06 18:15  cherry_yue  阅读(40)  评论(0)    收藏  举报