要求: 输入学生各科成绩,分别设计函数来计算学生各科的平均成绩、各科全部学生的平均成绩、查找学生成绩,然后对成绩进行输出。 希望有小伙伴可以帮忙看一下代码有没有什么错误,以及求问“各科全部学生的平均成绩”这一块的函数怎么写啊? #include<stdio.h> #include<string.h> struct students_list{ char name[20]; int Math[50]; Int English[50]; Int Science[50]; }; void student_average(struct students_list students[ ],intneme); void subject_average(struct students_list students[ ],intsubject); void search_student(struct students_list students[ ],char*name); int Count=0;
int main(void) { int choice,i; char name[20]; char subject[10]; struct students_list students[50]; for(i=1;;i++){ printf("请依次输入学生姓名、数学成绩、英语成绩、科学成绩:"); scanf("%s %d3(不知道为什么不能连着输入三个d)",&students[i].name,&students[i].Math, &students[i].English, &students[i].Science); Count++; } do{ printf("学生成绩功能选项:1:计算学生平均分 2:计算课程平均分 3:查询学生成绩 0:退出并输出成绩\n"); printf("请选择功能:"); scanf("%d", &choice); switch(choice){ case 1: printf("请输入要查找的学生姓名:"); scanf("%s", name); student_average(students,name); break; case 2: printf("请输入要查找的课程:"); scanf("%s", subject); subject_average(students,subject); break; case 3: printf("请输入要查找的学生姓名:"); scanf("%s", name); search_student(students, name); break; case 0: break; } }while(choice != 0); for(i=1;i<Count;i++){ printf("%s: %d3(不知道为什么不能连着输入三个d)",students[i].name,students[i].Math, students[i].English, students[i].Science); } return 0; } /学生平均分/ void student_average(struct students_list students[ ],intneme) { int i,flag = 0; double average; if(Count == 0){ printf("成绩单是空的!\n"); return; } for(i = 0; i <=Count; i++) if(strcmp(name, friends[i].name) == 0){ / 找到学生*/ flag=1; break; } if(flag){ average=(students[i].Math+students[i].English+students[i].Science)/3.0 printf(“student_average:%lf\n”,average); } else printf("无此学生!"); } /查询学生成绩/ void search_student(struct students_list students[ ],char*name) { int i, flag = 0; if(Count == 0){ printf("成绩单是空的!\n"); return; } for(i = 0; i < =Count; i++) if(strcmp(name, friends[i].name) == 0){ flag=1; break; } if(flag){ printf("Math: %d\n", students[i].Math); printf("English: %d\n", students[i].English); printf("Science: %d\n", students[i].Science); } else printf("无此学生!"); }