用函数求出平均分、最高分和最低分 有一个一维数组,内放10个学生成绩,写一个C语言函数,当主函数调用此函数后,能求出最高分、最低分和平均分 输入说明:
时间: 2024-03-10 14:48:36 浏览: 89
以下是示例代码:
```c
#include <stdio.h>
void calc_score(double score[], int n, double *avg, double *max, double *min);
int main() {
int i;
double score[10];
double avg, max, min;
for (i = 0; i < 10; i++) {
printf("请输入第%d个学生成绩:", i + 1);
scanf("%lf", &score[i]);
}
calc_score(score, 10, &avg, &max, &min);
printf("平均分为:%g\n", avg);
printf("最高分为:%g\n", max);
printf("最低分为:%g\n", min);
return 0;
}
void calc_score(double score[], int n, double *avg, double *max, double *min) {
double sum = 0.0;
int i;
*max = score[0];
*min = score[0];
for (i = 0; i < n; i++) {
sum += score[i];
if (score[i] > *max) {
*max = score[i];
}
if (score[i] < *min) {
*min = score[i];
}
}
*avg = sum / n;
}
```
在该示例代码中,我们定义了一个名为`calc_score`的函数,该函数接受三个指针类型的参数:`avg`、`max`和`min`,分别用于存储平均分、最高分和最低分的计算结果。该函数内部使用`for`循环遍历`score`数组,累加成绩并更新`max`和`min`的值。最后,该函数计算平均分并将计算结果存储到`avg`指针所指向的变量中。在主函数中,我们从标准输入中读取每个学生的成绩,并调用`calc_score`函数计算平均分、最高分和最低分。最后,我们使用`printf`函数将计算结果输出到屏幕上。
阅读全文