各位大神,请问怎么做出来这个啊
要求:输入3名学生5科成绩,算出每人平均分,每科平均分。最高分。
可以的话说说我错的是哪里 还有哪里有缺点,跪谢
#include<stdio.h>
#define N 3
#define M 5
int i,j,sum;
//float stu_aver[N],sub_aver[M];
int score[N][M];
int main()
{
void student_aver();
void subject_aver();
int highest();
for(i=0;i<N;i++)
{
printf("请输入第%d个学生的成绩:\n",i+1);
for(j=0;j<M;j++)
scanf("%d",&score[i][j]);
printf("\n");
}
printf("每个学生的平均分:\n");
printf("Num. average\n");
// for(i=1;i<N+1;i++)
// printf("%d %d\n",i,student_aver);
printf("每门课的平均分:\n");
printf("Sub. average\n");
// for(j=1;j<M+1;j++)
// printf("%d %d\n",j,subject_aver);
// printf("最高分:%d\n",highest());
}
void student_aver()
{
long int stu_aver[];
for(i=0,sum=0;i<N;i++)
for(j=0;j<M;j++)
sum=sum+score[i][j];
stu_aver[i]=sum/M;
printf("%d %d\n",i,stu_aver);
}
void subject_aver()
{
long int sub_aver[];
for(j=0,sum=0;j<M;j++)
{
for(i=0;i<N;i++)
sum=sum+score[i][j];
sub_aver[i]=sum/N;
printf("%d %d\n",j,sub_aver);
}
int highest()
{
int max;
max=score[0][0];
{for(i=0;i<N;i++)
for(j=0;j<M;j++)
max>score[i][j]?max:score[i][j];
}
printf("%d",max);
}