1. 程式人生 > >zzuli OJ 1109: 數根(函式專題)

zzuli OJ 1109: 數根(函式專題)

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

39

Sample Output

3

HINT

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); 
}