c语言1. 用指针方式编写函数模块,求多门课程的平均成绩,同时找出最高、最低成绩,分段等统计。
时间: 2023-11-22 13:53:58 浏览: 75
下面是一个使用指针方式编写的求多门课程平均成绩、最高分、最低分的函数模块的示例代码:
```c
#include <stdio.h>
void score_statistic(float *score, int num, float *average, float *max, float *min)
{
float sum = 0.0;
*max = *min = *score; // 初始化最高分和最低分为第一门课的成绩
for (int i = 0; i < num; i++) {
sum += *(score + i);
if (*(score + i) > *max) {
*max = *(score + i);
}
if (*(score + i) < *min) {
*min = *(score + i);
}
}
*average = sum / num;
}
int main()
{
float scores[] = {89.5, 90.0, 78.5, 92.0, 80.5};
int num = sizeof(scores) / sizeof(float);
float average, max, min;
score_statistic(scores, num, &average, &max, &min);
printf("平均成绩:%.2f\n", average);
printf("最高成绩:%.2f\n", max);
printf("最低成绩:%.2f\n", min);
return 0;
}
```
在 `score_statistic` 函数中,使用指针来操作数组中的元素,计算平均成绩、最高分和最低分,并将结果保存到相应的指针变量中。在调用该函数时,将成绩数组的地址、数组元素数量以及指向平均成绩、最高分和最低分的指针变量传递给函数即可。
阅读全文