C语言【问题描述】 编写函数int sum(int x),求整数x的各位数字之和。编写一个程序,调用sum函数计算任一输入的整数的各位数字之和。’
时间: 2024-03-20 16:40:42 浏览: 91
下面是一份示例代码:
```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),求0与n之间的所有整数的和作为函数的返回结果。并编写main()函数进行测试
在C语言中,你可以创建一个名为`sum`的函数来求解0到n之间所有整数的和。这是一个简单的例子:
```c
#include <stdio.h>
// 定义sum函数,接收一个整数n作为参数,返回0到n的整数和
int sum(int n) {
int total = 0; // 初始化总和为0
for (int i = 0; i <= n; i++) { // 从0循环到n(包括n)
total += i; // 每次迭代将当前数字加到总和上
}
return total; // 返回最终的总和
}
int main() {
int num;
printf("请输入一个整数n:");
scanf("%d", &num); // 输入一个数n
// 检查输入是否合法
if (num < 0) {
printf("输入错误!n应是非负整数。\n");
return 1;
}
// 调用sum函数并打印结果
int result = sum(num);
printf("从0到%d的所有整数之和是:%d\n", num, result);
return 0;
}
```
在这个程序中,`sum`函数通过for循环遍历了0到n的所有整数并将它们累加起来。在`main`函数中,用户输入一个整数n,然后调用`sum`函数计算和并输出结果。如果输入的n是负数,我们会给出错误提示。
阅读全文