问一下C语言,看看我错在哪里,为什么输出的答案总是不对

输入班级10名学生5门课的成绩,求出每个学生的平均成绩并按升序排序输出。
编译过后平均分总是一串常常的数字,为什么。

#include <stdio.h>
#include <string.h>
#define N 3
#define M 5
void main()
{
float score[N][M];
float ave[N];
float sum[N];
float t;
int i,j;
for(i=0;i<N;i++)
{ printf("请输入第%d个同学的5门成绩: \n",i+1);
for(j=0;j<5;j++)
scanf("%f",&score[i][j]);
}

for(i=0;i<N;i++)
{
for(j=0;j<M;j++)
{
sum[i]+=score[i][j];
}
ave[i]=sum[i]/5;
}

for(i=0;i<N-1;i++)
for(j=i+1;j<N;j++)
if(ave[i]>ave[j]) {t=ave[i];ave[i]=ave[j];ave[j]=t;}
for(i=0;i<N;i++)
printf("%f ",ave[i]);
}

float sum[N]={0}
sum没有初始化
温馨提示:答案为网友推荐,仅供参考
相似回答