有一个一维数组,内放10个学生成绩。写一个西数,当主两数调用此函数后,能求出 平均分、最高分和最低分。
时间: 2024-02-21 20:59:03 浏览: 76
好的,下面是一个简单的 C 语言程序实现计算一维数组中的平均分、最高分和最低分:
```c
#include <stdio.h>
void calculate_score(int score[], int size, float *average, int *max, int *min);
int main() {
int score[10], max, min;
float average;
printf("请输入10个学生成绩:\n");
for (int i = 0; i < 10; i++) {
scanf("%d", &score[i]);
}
calculate_score(score, 10, &average, &max, &min);
printf("平均分:%.2f\n", average);
printf("最高分:%d\n", max);
printf("最低分:%d\n", min);
return 0;
}
void calculate_score(int score[], int size, float *average, int *max, int *min) {
int sum = 0;
*max = score[0];
*min = score[0];
for (int i = 0; i < size; i++) {
sum += score[i];
if (score[i] > *max) {
*max = score[i];
}
if (score[i] < *min) {
*min = score[i];
}
}
*average = (float) sum / size;
}
```
在该程序中,我们定义了一个名为 `calculate_score()` 的函数,用于计算一维数组中的平均分、最高分和最低分。该函数使用指针作为参数,将计算结果通过指针返回给调用者。在主函数中,我们通过 `scanf()` 函数获取用户输入的10个学生成绩,并将它们存储在一维数组中。最后,我们调用 `calculate_score()` 函数,计算平均分、最高分和最低分,并输出结果。
阅读全文