#include<stdio.h> #define N 10 #define M 5 float score[N][M]; float astu[N],acour[M]; int r,c; int main() //主函数 { int i,j; float h; //声明函数 printf(" *************欢迎使用学生成绩管理系统******************\n"); float highest(); // 求最高分 void inputstu(void); // 输入函数 void averstu(void); //各学生平均成绩 void avercour(void); //各科平均分 inputstu(); //调用函数 averstu(); avercour(); printf("\n 科目 科目1 科目2 科目3 科目4 科目5 平均分\n"); for(i=0;i<N;i++) { printf("\n第 %2d名同学",i+1); //输出分数 for(j=0;j<M;j++) printf("%8.2f",score[i][j]); printf("%8.2f\n",astu[i]); } printf("\n各科平均分:"); //输出平均分 for(j=0;j<M;j++) printf("%8.2f",acour[j]); printf("\n"); h=highest(); printf("最高分:%7.2f 第 %2d名同学 科目%2d\n",h,r,c); return 0; } //定义函数 void inputstu(void) // 定义输入函数 { int i,j; //printf(" *************欢迎使用学生成绩管理系统******************\n"); for(i=0;i<N;i++) {printf("\n请输入第%2d同学分数:\n",i+1); for(j=0;j<M;j++) scanf("%f",&score[i][j]); } } void averstu(void) //定义各个学生平均分函数 {int i,j; float s; for(i=0;i<N;i++) {for(j=0,s=0;j<M;j++) s+=score[i][j]; astu[i]=s/(float)M; } } void avercour(void) //定义各科平均分函数 {int i,j; float s; for(j=0;j<M;j++) {s=0; for(i=0;i<N;i++) s+=score[i][j]; acour[j]=s/(float)N; } } float highest() //定义最高分函数 {float high; int i,j; high=score[0][0]; for(i=0;i<N;i++) for(j=0;j<M;j++) if(score[i][j]>high) {high=score[i][j]; r=i+1; c=j+1; } return (high); //返回值 }
printf(" *************欢迎使用学生成绩管理系统******************\n");
这条语句加载main里第一行会报错,放到子函数里就没事了,不知道不太明白原因,求大神指点一二,在此谢过了!
流浪_老
hhh112123123
相关分类