照着答案打的,哪里错了
程序代码:
#include<stdio.h> #define N 3 struct Student { int num; char name[20]; float score[3]; float aver; }; void input(struct Student stu[]) { int i; printf("请输入各学生的信息:学号、姓名、三门课成绩:\n"); for (i = 0; i < N; i++) { scanf_s("%d%s%f%f", &stu[i].num, stu[i].name, 20, &stu[i].score[0], &stu[i].score[1], &stu[i].score[2]); stu[i].aver = (stu[i].score[0] + stu[i].score[1] + stu[i].score[2]) / N; } } struct Student max(struct Student stu[]) { int i; int m = 0; for (i = 0; i < N; i++) if (stu[m].aver < stu[i].aver) m = i; return stu[m]; } void print(struct Student stud) { printf("\n成绩最高的是:\n"); printf("学号:%d\n姓名:%s\n三门课成绩:%5.1f,%5.1f,%5.1f\n平均成绩:%6.2f\n", stud.num, stud.name, stud.score[0], stud.score[1], stud.score[2], stud.aver); } int main() { void input(struct Student stu[]); struct Student max(struct student stu[]); void print(struct Student stud); struct Student stu[N], *p; p = stu; input(p); print(max(p)); return 0; }