某学生的记录由学号、8门课程成绩和平均分组成,学号和8门课程的成绩已在主函数中给出。 请编写函数fun,它的功能是:求出该学生的平均分放在记录的ave成员中。请自己定义正确的形参
/*某学生的记录由学号、8门课程成绩和平均分组成,学号和8门课程的成绩已在主函数中给出。
请编写函数fun,它的功能是:求出该学生的平均分放在记录的ave成员中。请自己定义正确的形参。 */
#include <stdio.h>
typedef struct
{
int student_id;
int grades[8];
double ave;
} StudentRecord;
void fun(StudentRecord *record)
{
int sum = 0;
for (int i = 0; i < 8; i++)
{
sum += record->grades[i];
}
record->ave = (double)sum / 8;
}
int main()
{
StudentRecord student;
printf("请输入学生的学号:");
scanf("%d", &student.student_id);
printf("请输入学生的8门课程成绩:\n");
for (int i = 0; i < 8; i++)
{
printf("课程%d成绩:", i + 1);
scanf("%d", &student.grades[i]);
}
fun(&student);
printf("学生学号:%d\n", student.student_id);
printf("学生8门课程成绩:");
for (int i = 0; i < 8; i++)
{
printf("%d ", student.grades[i]);
}
printf("\n");
printf("学生平均分:%.2f\n", student.ave);
return 0;
}