//有n个结构体变量,内含学生号, 姓名和三门课成绩。要求输出平均成绩最高学生的信息。 #include <stdio.h> #define N 3 struct Student { int num; char name[20]; float socre[3]; float aver; }; void input(struct Student stu[]) { int i; printf("Çë·Ö±ðÊäÈë¸÷ѧÉúµÄÐÅÏ¢£ºÑ§ºÅ£¬ÐÕÃû£¬ÈýÃſγɼ¨\n"); for(i=0;i<N;i++) { scanf("%d %s %f %f %f",&stu[i].num,stu[i].name,&stu[i].socre[0],&stu[i].socre[1],&stu[i].socre[2]); stu[i].aver=(stu[i].socre[0]+stu[i].socre[1]+stu[i].socre[2])/3; } } struct Student max(struct Student stu[]) { int i,m=0; for(i=0;i<N;i++) if(stu[i].aver>stu[m].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.socre[0],stud.socre[1],stud.socre[2],stud.aver); } int main() { struct Student stu[N],*p=stu; input(p); print(max(p)); return 0; }
时间: 2024-10-24 22:58:20