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 }

浙公网安备 33010602011771号