如何编写一个C/C++或者类似编程语言的函数,该函数接受一个包含十个元素的一维整数数组作为参数,然后在主函数中调用这个函数时能够返回并计算数组中的最高分、最低分以及平均分?
时间: 2024-12-21 13:23:03 浏览: 3
基于C++编写一个函数求一个4*4二维数组所有周边元素的和
在C/C++中,你可以编写一个函数来实现这个功能。这里是一个简单的例子:
```c++
#include <stdio.h>
// 函数声明,包含三个参数:数组、数组长度和分数类型的指针
void calculate_scores(int arr[], int size, float* max_score, float* min_score, float* average);
int main() {
// 初始化一维整数数组
int scores[10] = {95, 88, 92, 76, 89, 94, 85, 90, 91, 87};
// 初始化用于存储结果的变量
float max_score, min_score, average;
// 调用函数,传入数组、大小和结果指向器
calculate_scores(scores, 10, &max_score, &min_score, &average);
// 输出结果
printf("最高分: %.2f\n", max_score);
printf("最低分: %.2f\n", min_score);
printf("平均分: %.2f\n", average);
return 0;
}
// 实现计算函数
void calculate_scores(int arr[], int size, float* max_score, float* min_score, float* average) {
*max_score = arr[0]; // 假设第一个元素是最高的
*min_score = arr[0]; // 同样假设第一个元素是最低的
for (int i = 1; i < size; i++) {
if (arr[i] > *max_score) {
*max_score = arr[i];
}
if (arr[i] < *min_score) {
*min_score = arr[i];
}
}
*average = (float)(arr[0] + arr[size - 1]) / size; // 计算平均值(假设所有分数相等)
}
```
在这个示例中,`calculate_scores`函数接收一个整数数组,遍历数组找出最大值和最小值,并计算平均值。在`main`函数中,我们创建了一个数组,并将其传递给计算函数。最后,我们在`main`中打印出结果。
阅读全文