用C语言完成下面这道题目 编写函数:int sum(int n); 返回一个整数的各位的和,并用主函数测试之。(n的值由用户输入)
时间: 2023-12-03 20:45:44 浏览: 96
以下是用C语言编写的代码:
```c
#include <stdio.h>
int sum(int n);
int main() {
int n;
printf("请输入一个整数: ");
scanf("%d", &n);
printf("各位数字之和为: %d\n", sum(n));
return 0;
}
int sum(int n) {
int total = 0;
while (n != 0) {
total += n % 10;
n /= 10;
}
return total;
}
```
使用了一个循环来迭代地从输入的数字中提取个位数,并将它们相加,最终得到所有数字的和。主函数测试了这个函数并打印了结果。
相关问题
用C语言完成这道题目 编写递归函数:int sum(int n); 求1+2+3+...+n的值,并用主函数测试之。(n的值用户输入)
以下是用C语言编写的递归函数和主函数:
```c
#include <stdio.h>
int sum(int n) {
if (n == 1) {
return 1;
} else {
return n + sum(n-1);
}
}
int main() {
int n;
printf("请输入一个正整数n:");
scanf("%d", &n);
printf("1+2+...+%d的和为:%d\n", n, sum(n));
return 0;
}
```
运行结果:
```
请输入一个正整数n:10
1+2+...+10的和为:55
```
用C语言编写函数:int sum(int n); 返回一个整数的各位的和,并用主函数测试之。(如输入123,返回6)
以下是用C语言编写的函数 `sum()`,可以返回一个整数的各位数字之和:
```c
#include <stdio.h>
int sum(int n) {
int digit, total = 0;
while (n > 0) {
digit = n % 10;
total += digit;
n /= 10;
}
return total;
}
int main() {
int n;
printf("请输入一个整数:");
scanf("%d", &n);
printf("%d的各位数字之和为:%d\n", n, sum(n));
return 0;
}
```
运行结果如下:
```
请输入一个整数:123
123的各位数字之和为:6
```
阅读全文