在C语言中,求偶数和的方法有多种,以下是几种常见的方法:
方法一:使用循环结构和条件判断
```c
include
int main() {
int n, sum = 0;
printf("请输入一个正整数 n:");
scanf("%d", &n);
for (int i = 2; i <= n; i += 2) {
sum += i;
}
printf("1 到%d 的偶数和为:%d\n", n, sum);
return 0;
}
```
方法二:使用数组和条件判断
```c
include
int main() {
int numbers[] = {10, 13, 6, 7, 4};
int sum = 0;
int index;
for (index = 0; index < sizeof(numbers) / sizeof(numbers); index++) {
if (numbers[index] % 2 == 0) {
sum += numbers[index];
}
}
printf("The sum is %d\n", sum);
return 0;
}
```
方法三:使用连续偶数和的公式
对于连续偶数求和,可以使用公式:
\[ \text{sum} = \frac{(\text{最小偶数} + \text{最大偶数}) \times \text{偶数的个数}}{2} \]
例如,求1到100的偶数和:
\[ \text{sum} = \frac{(2 + 100) \times 50}{2} = 2550 \]
方法四:使用递归函数
```c
include
int sum_even(int n) {
if (n <= 0) {
return 0;
} else if (n % 2 == 0) {
return n + sum_even(n - 2);
} else {
return sum_even(n - 1);
}
}
int main() {
int n;
printf("请输入一个正整数 n:");
scanf("%d", &n);
printf("1 到%d 的偶数和为:%d\n", n, sum_even(n));
return 0;
}
```
方法五:使用循环和数组
```c
include
int main() {
int m, n, sum = 0;
printf("请输入两个整数 m 和 n:");
scanf("%d%d", &m, &n);
for (int i = m; i <= n; i++) {
if (i % 2 == 0) {
sum += i;
}
}
printf("从%d 到%d 的偶数和为:%d\n", m, n, sum);
return 0;
}
```
这些方法都可以用来求偶数和,具体选择哪种方法可以根据实际需求和编程习惯。