#include <stdio.h> #include <string.h> #define MAX_STUDENT_NUM 30 // #define MAX_COURSE_NUM 6 // #define NAME_LEN 20 // struct Student { char id[10];//学生学号 char name[NAME_LEN];//姓名 int scores[MAX_COURSE_NUM];//各科分数 int total_score;//总分 float avg_score;//平均分 }; void input_record(struct Student students[], int num);//录入每个学生的学号、姓名和各科考试成绩 void calc_total_avg_course(struct Student students[], int num, int course_num);//计算每门课程的总分和平均分 请用c语言分别补充函数内容
时间: 2024-01-14 15:04:06 浏览: 79
SeqList.h #include <stdio.h> //包含标准输入输出流的头文件 #include <assert.h
补充input_record函数内容:
```
void input_record(struct Student students[], int num)
{
for (int i = 0; i < num; i++)
{
printf("请输入第%d个学生的学号:", i+1);
scanf("%s", students[i].id);
printf("请输入第%d个学生的姓名:", i+1);
scanf("%s", students[i].name);
for (int j = 0; j < MAX_COURSE_NUM; j++)
{
printf("请输入第%d个学生的第%d门课程成绩:", i+1, j+1);
scanf("%d", &students[i].scores[j]);
}
}
}
```
补充calc_total_avg_course函数内容:
```
void calc_total_avg_course(struct Student students[], int num, int course_num)
{
for (int i = 0; i < course_num; i++)
{
int total_score = 0;
for (int j = 0; j < num; j++)
{
total_score += students[j].scores[i];
}
printf("第%d门课程的总分为:%d,平均分为:%.2f\n", i+1, total_score, (float)total_score/num);
}
}
```
注:这里假设MAX_COURSE_NUM为6,NAME_LEN为20。
阅读全文