分类: C/C++
2011-09-15 16:19:03
输入任意一个正整数,将其各位相加,若得到的结果大于两位数,则将该结果的各位再相加,直到和为一位数(即最终结果小于10)。代码如下:
int GetSingleNum(int N)
{
if (N <= 0) return -1;
int sum = 0, tempN = N;
while(true)
{
int y = tempN % 10;
tempN = tempN / 10;
sum += y;
if (tempN <= 0) break;
}
if (sum > 9)
{
sum = GetSingleNum(sum);
}
return sum;
}