题目要求输入一个整数x,求其所有约数的和,并将结果放入变量sum中,最后输出sum。C语言
时间: 2024-05-08 16:22:32 浏览: 8
以下是求解整数x的所有约数和的C语言代码:
```c
#include <stdio.h>
int main() {
int x, i, sum = 0;
printf("请输入一个整数x:");
scanf("%d", &x);
for (i = 1; i <= x; i++) {
if (x % i == 0) {
sum += i; // 累加约数
}
}
printf("x的所有约数的和为:%d", sum);
return 0;
}
```
以上代码中,我们通过for循环遍历整数x的所有可能的约数,如果i是x的约数,则累加到sum中。最后输出sum即可。
相关问题
C语言从键盘输入两个正整数,求其最大公约数并输出结果。
可以使用辗转相减法来求解两个正整数的最大公约数。
以下是使用 C 语言编写的代码:
```c
#include <stdio.h>
int main() {
int num1, num2, gcd;
printf("请输入两个正整数:\n");
scanf("%d %d", &num1, &num2);
// 辗转相减法求最大公约数
while (num1 != num2) {
if (num1 > num2) {
num1 -= num2;
} else {
num2 -= num1;
}
}
gcd = num1; // 最大公约数即为较小的那个数
printf("最大公约数为:%d", gcd);
return 0;
}
```
在这个程序中,我们首先从键盘输入两个正整数 `num1` 和 `num2`,然后使用辗转相减法求出它们的最大公约数,最后输出结果。
用c语言,将n个整数放入一个数组中,计算所有偶数和并输出
好的,我可以回答您的问题。以下是用 C 语言实现计算数组中所有偶数和的程序:
```c
#include <stdio.h>
int main(void) {
int n, sum = 0;
printf("请输入整数个数:");
scanf("%d", &n);
int arr[n];
for (int i = 0; i < n; i++) {
printf("请输入第 %d 个整数:", i+1);
scanf("%d", &arr[i]);
if (arr[i] % 2 == 0) {
sum += arr[i];
}
}
printf("所有偶数的和为:%d。\n", sum);
return 0;
}
```
您可以将输入的整数个数和数组元素替换为您的实际需求,然后编译并运行该程序,即可得到所有偶数的和。
注意:该程序仅是一个简单的示例,仅供参考。实际开发中还需要考虑各种边界情况,以确保程序的正确性和健壮性。