總時間限制: 1000ms 內存限制: 65536kBspa
數根能夠經過把一個數的各個位上的數字加起來獲得。若是獲得的數是一位數,那麼這個數就是數根。若是結果是兩位數或者包括更多位的數字,那麼再把這些數字加起來。如此進行下去,直到獲得是一位數爲止。
好比,對於24來講,把2和4相加獲得6,因爲6是一位數,所以6是24的數根。再好比39,把3和9加起來獲得12,因爲12不是一位數,所以還得把1和2加起來,最後獲得3,這是一個一位數,所以3是39的數根。翻譯
24
6
1 #include <stdio.h> 2 int main() 3 { 4 char a[1005]; 5 int i,sum=0,temp; 6 gets(a); 7 for(i=0;a[i]!='\0';i++) 8 { 9 a[i]=a[i]-'0'; 10 sum=sum+a[i]; 11 } 12 13 while(sum>9) 14 { 15 temp=0; 16 while(sum>0) 17 { 18 temp=temp+sum%10; 19 sum=sum/10; 20 } 21 sum=temp; 22 } 23 printf("%d\n",sum); 24 return 0; 25 }