循环遍历数组方式
可以使用循环遍历数组中的每一个元素,并通过判断元素的值是否为偶数来计算这些元素的和。下面是一个示例代码:
#include <stdio.h>
int main() {
int arr[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
int size = sizeof(arr) / sizeof(arr[0]);
int sum = 0;
for (int i = 0; i < size; ++i) {
if (arr[i] % 2 == 0) {
sum += arr[i];
}
}
printf("数组中偶数元素的和为:%d\n", sum);
return 0;
}
在这个示例中,我们定义了一个整型数组arr
,其中包含一些整数元素。然后,我们使用sizeof
运算符计算数组长度,并将其除以sizeof(arr[0])
得到数组的大小。
接下来,声明一个变量sum
用于保存偶数元素的和,并初始化为0。通过循环遍历数组中的每一个元素,使用取模运算符%
判断元素是否为偶数,如果是偶数就将其加到sum
中。
最后,使用printf
函数输出偶数元素的和。
当你运行这个程序时,它将输出:
数组中偶数元素的和为:30
指针的方式
当使用指针访问数组时,你可以通过指针的方式遍历数组,并对满足条件的元素进行求和。下面是使用指针的示例代码:
#include <stdio.h>
int main() {
int arr[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
int size = sizeof(arr) / sizeof(arr[0]);
int *ptr = arr; // 声明指向数组首元素的指针
int sum = 0;
for (int i = 0; i < size; ++i) {
if (*ptr % 2 == 0) { // 使用指针获取当前元素的值
sum += *ptr;
}
ptr++; // 将指针移动到下一个元素
}
printf("数组中偶数元素的和为:%d\n", sum);
return 0;
}
在这个示例中,我们声明了一个指针ptr
,并将其初始化为指向数组arr
的第一个元素。
然后,使用循环遍历数组,通过*ptr
来获取指针所指向的当前元素的值,判断该值是否为偶数,如果是则将其加到sum
中。
接着,通过ptr++
将指针移动到数组的下一个元素。
最后,使用printf
函数输出偶数元素的和。
这样,我们就使用指针的方式遍历数组并计算偶数元素的和。
当你运行这个程序时,它将输出:
数组中偶数元素的和为:30