C语言【问题描述】 编写函数int sum(int x),求整数x的各位数字之和。编写一个程序,调用sum函数计算任一输入的整数的各位数字之和。’
时间: 2024-03-20 09:40:42 浏览: 24
下面是一份示例代码:
```c
#include <stdio.h>
int sum(int x) {
int s = 0;
while (x) {
s += x % 10;
x /= 10;
}
return s;
}
int main() {
int x;
printf("请输入一个整数:");
scanf("%d", &x);
printf("%d的各位数字之和为:%d\n", x, sum(x));
return 0;
}
```
在 `sum` 函数中,用一个循环不断地取出给定整数的各位数字,累加到一个变量 `s` 中,然后将整数除以10,将位数向右移动一位。当整数变成0时,循环结束,此时 `s` 中存储了整数的各位数字之和,将其作为函数返回值。
在程序主函数中,先读入一个整数,然后调用 `sum` 函数计算其各位数字之和,并将结果输出。
相关问题
用c语言基础知识编写程序编写函数int sum(int x),求整数x的各位数字之和。 在main函数中测试该函数:从键盘输入一非负整数,然后调用sum函数计算各位数字之和并输出结果。
好的,这是一个关于C语言基础编程的问题,我可以回答。下面是该程序的示例代码:
```
#include <stdio.h>
int sum(int x)
{
int digit, total = 0;
while (x > 0)
{
digit = x % 10; // 取出x的最低位数字
total += digit; // 累加到total中
x /= 10; // x右移一位,去除最低位数字
}
return total;
}
int main(void)
{
int x, s;
printf("请输入一个非负整数:");
scanf("%d", &x);
s = sum(x);
printf("各位数字之和为:%d\n", s);
return 0;
}
```
这个程序中,sum函数接受一个整数x作为参数,返回x的各位数字之和。在main函数中,首先从键盘上读入一个非负整数x,然后调用sum函数计算x的各位数字之和并输出结果。
c语言编写函数:int sum(int n); 返回一个整数的各位的和,并用主函数测试之。(如输入123,返回6)
以下是一个示例代码:
```c
#include <stdio.h>
int sum(int n) {
int total = 0;
while (n > 0) {
total += n % 10; // 取出最后一位数字并加到总和中
n /= 10; // 去掉最后一位数字
}
return total;
}
int main() {
int n;
printf("请输入一个整数:");
scanf("%d", &n);
printf("其各位数字之和为:%d\n", sum(n));
return 0;
}
```
在主函数中,首先提示用户输入一个整数,并用 `scanf()` 函数读入。然后调用 `sum()` 函数计算各位数字的和,并将结果输出。函数 `sum()` 中使用循环取出数字的每一位,并将其加到总和变量 `total` 中。最后返回总和即可。