某学生的记录由学号、8门课程成绩和平均分组成,学号和8门课程的成绩已在主函数中给出。请编写函数fun,它的功能是:求出该学生的平均分放在记录的ave成员中。 例如,学生的成绩是:85.5,76,69.5,85,91,72,64.5,87.5,他的平均分应当是:78.875。用c语言编写
时间: 2024-03-19 16:42:36 浏览: 75
C++输入函数和成绩显示函数,并计算每位同学的总分和平均分,对成绩排名输出等.pdf
以下是函数fun的C语言代码实现:
```c
#include <stdio.h>
typedef struct {
int id; // 学号
float score[8]; // 8门课程成绩
float ave; // 平均分
} Student;
void fun(Student *s) {
float sum = 0;
for (int i = 0; i < 8; i++) {
sum += s->score[i]; // 计算总分
}
s->ave = sum / 8; // 计算平均分
}
int main() {
Student s = {
1,
{85.5, 76, 69.5, 85, 91, 72, 64.5, 87.5},
0
};
fun(&s);
printf("学生%d的平均分是:%.3f", s.id, s.ave);
return 0;
}
```
输出结果为:
```
学生1的平均分是:78.875
```
注意:在函数fun中,使用指针访问结构体成员变量,需要使用箭头符号(->)。
阅读全文