#include #define N 3 // 学生数为3 struct student // 建立结构体类型struct student {int num; // 学号 char name[20]; // 姓名 float score[3]; // 3门课成绩 float aver; // 平均成绩 }; int main() {void input(struct student stu[]); // 函数声明 struct student max(struct student stu[]); // 函数声明 void print(struct student stu); // 函数声明 struct student stu[N],*p=stu; // 定义结构体数组和指针 input(p); // 调用input函数 print(max(p)); // 调用print函数,以max函数的返回值作为实参 return 0; } void input(struct student stu[]) // 定义input 函数 {int i; printf("请输入各学生的信息:学号、姓名、三门课成绩:\n"); for(i=0;istu[m].aver) m=i; // 找出平均成绩最高的学生在数组中的序号 return stu[m]; // 返回包含该生信息的结构体元素 } void print(struct student stud) // 定义print函数 { 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); }