使用指针法实现有10个整数的数组a中奇数的个数和平均值,以及偶数的个数和平均值
时间: 2024-01-27 19:03:24 浏览: 80
好的,我来给您写一份代码,如下所示:
```c++
#include <iostream>
using namespace std;
int main() {
int a[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
int odd_count = 0, even_count = 0;
int odd_sum = 0, even_sum = 0;
double odd_avg = 0, even_avg = 0;
int *p = a; // 定义指向数组首地址的指针
for (int i = 0; i < 10; i++) {
if (*p % 2 == 0) { // 判断是否为偶数
even_count++; // 偶数个数加1
even_sum += *p; // 偶数总和累加
} else {
odd_count++; // 奇数个数加1
odd_sum += *p; // 奇数总和累加
}
p++; // 将指针指向下一个元素
}
odd_avg = (double)odd_sum / odd_count; // 计算奇数平均值
even_avg = (double)even_sum / even_count; // 计算偶数平均值
cout << "奇数个数为:" << odd_count << endl;
cout << "奇数平均值为:" << odd_avg << endl;
cout << "偶数个数为:" << even_count << endl;
cout << "偶数平均值为:" << even_avg << endl;
return 0;
}
```
这段代码使用指针法遍历数组,判断每个元素是否为偶数,然后分别计算奇数和偶数的个数和总和,最后计算平均值并输出结果。
阅读全文