题目:通过编程实现,统计1~n有多少个9 #include<stdio.h> #include<math.h> int judge( int num ) { int sum = 0; while(num != 0) { num = num / 10; sum++; } return sum; } int count_nine(int input) { int count=0; int amount=0; int k; int i = 1 ; for(i = 1 ;i <= input; i++) { int j = i; while(j >= 9) { k = judge(j); int a; if(k == 1 ) { a = 10; } else { a = pow( 10 , k-1 ); } int result; result = j / a ; if(result == 9 ) { count++; } j = j % a ; if (j == 9 ) { count++; break; } } } return count; } int main() { int n; printf("please input n:"); scanf("%d",&n); printf("%d nine from 1 to%d",count_nine(n),n); }