描述: | 求整数的Root:给定正整数,求每位数字之和;如果和不是一位数,则重复; |
题目类别: | 数组 |
难度: | 初级 |
运行时间限制: | 10Sec |
内存限制: | 128MByte |
阶段: | 入职前练习 |
输入: | 输入任意一个或多个整数 |
输出: | 输出各位数字之和,直到和为个位数为止(输入异常,则返回-1)
多行,每行对应一个输入数据的结果。 |
样例输入: | 25 865 |
样例输出: | 7 1 |
完整代码:
#include<iostream>
using namespace std;
int sum(int n)
{
if(n<0)
return -1;
if(n<10)
return n;
int cnt;
while(n)
{
cnt=cnt+n%10;
n=n/10;
}
sum(cnt);
}
int main()
{
int n;
while(cin>>n)
cout<<sum(n)<<endl;
}