数根定义:对于一个正整数n,我们将它的各个位相加得到一个新的数字,如果这个数字是一位数,我们称之为n的数根,否则重复处理直到它成为一个一位数,最后得到的一位数也算是n的数根。 计算正整数树根的函数原型是:int numRoot(int n); 函数参数n是一个正整数,返回值是n的数根。请完成该函数定义。 示例1: 输入参数:123456,其各位数字之和是21,21的各位数字之和是3 返回值:3 示例2: 输入参数:35,其各位数字之和是8 返回值:8 提示:建议利用函数递归方法实现。
时间: 2023-12-14 22:38:37 浏览: 222
高精度整数_刘汝佳.ppt
以下是使用递归实现的代码:
```
int numRoot(int n) {
if (n < 10) { // 如果n是一位数,直接返回n
return n;
}
int sum = 0;
while (n > 0) { // 计算n的各位数字之和
sum += n % 10;
n /= 10;
}
return numRoot(sum); // 递归计算sum的数根
}
```
主要思路是通过循环计算n的各位数字之和,然后递归计算这个和的数根,直到最后得到的数为一位数。
阅读全文