zzuli OJ 1109: 數根(函式專題)
阿新 • • 發佈:2019-01-22
Description
輸入一個正整數,輸出該數的數根。數根可以通過把一個數的各個位上的數字加起來得到。如果得到的數是一位數,那麼這個數就是數根。如果結果是兩位數或者包括更多位的數字,那麼再把這些數字加起來。如此進行下去,直到得到是一位數為止。比如,對於24來說,把2和4相加得到6,由於6是一位數,因此6是24的數根。再比如39,把3和9加起來得到12,由於12不是一位數,因此還得把1和2加起來,最後得到3,這是一個一位數,因此3是39的數根。
要求使用函式,定義函式digitSum(int n)求n的各位數字和,其餘功能在main()函式中實現。
int digitSum(int n)
{
//函式返回n的各位數字之和
}
Input
輸入一個int範圍內的正整數n
Output
輸出n的數根
Sample Input
39Sample Output
3HINT
Source
#include<stdio.h> int digitSum(int n) { int i=0,j=0,b[10],sum=0,c,x; while(n>0) { x=n%10; i++;++j; b[i]=x; n=n/10; } for(int k=1;k<=i;k++) { sum+=b[k]; } return sum; } int main() { int n,m,sum,i; scanf("%d",&n); while(n>=10) n=digitSum(n); printf("%d",n); }