C语言编程:)写一个递归函数DigitSum(n),输入一个非负整数,返回组成它的数字之和,例如,调用DigitSum(1729),则应该返回1+7+2+9,它的和是19。
时间: 2023-06-17 07:05:46 浏览: 145
C语言程序设计-计算并输出给定整数n的所有因子之和(不包括1与自身);注意:n的值不大于1000.c
5星 · 资源好评率100%
好的,下面是 C 语言递归函数 `DigitSum` 的实现:
```c
#include <stdio.h>
int DigitSum(int n) {
if (n < 10) {
// 递归结束条件:当 n 是一位数时,返回 n。
return n;
} else {
// 递归调用:将 n 的每一位数字相加并返回。
return n % 10 + DigitSum(n / 10);
}
}
int main() {
int n = 1729;
int sum = DigitSum(n);
printf("Digit sum of %d is %d\n", n, sum);
return 0;
}
```
在 `main` 函数中,我们调用 `DigitSum` 函数,传入参数 `n`,并将返回值存储在变量 `sum` 中。最后输出结果即可。
阅读全文