fun功能:统计数组中的偶数的个数,并求出平均值。
例如:当前数组中的内容为(12, 5, 9, 8, 23, 4, 7, 21),输出结果应为n=3,ave=8.000000
思路:判断数组中的偶数要用到if来判断,偶数%2=0。由此可以写成 if ( arr [i] % 2 == 0) .
( "%" 在式子中用来取余例如 10%3=1)
#include <stdio.h>
int fun(int *arr, int len, double *ave) {
int n = 0;
int sum = 0;
for (int i = 0; i < len; i++) {
if (arr[i] % 2 == 0) { //判断是否为偶数
n++;
sum += arr[i];
}
}
if (n > 0) {
*ave = (double)sum / n; //计算平均值
} else {
*ave = 0.0; // 如果没有偶数,平均值设为0.0
}
return n;
}
int main() {
int arr[] = {12, 5, 9, 8, 23, 4, 7, 21};
int len = sizeof(arr) / sizeof(arr[0]); //sizeof用与计算数组的长度
double ave;
int n = fun(arr, len, &ave);
printf("偶数个数: %d\n", n);
printf("偶数平均值: %.8f\n", ave);
return 0;
}
运行结果:

当题目要求取奇数时,只需要将“ if (arr[i] % 2 == 0) ”改为“ if (arr[i] % 2 != 0) ”或“ if (arr[i] % 2 == 1) ”即可。
2660

被折叠的 条评论
为什么被折叠?



