为啥会显示[Error] ld returned 1 exit status
#include<stdio.h>
int m,n,L,M;
float score[60][9],stu[60],cla[9],high[9],low[9];//各科分数,学生平均分 ,课程平均分 ,最高分,最低分
int main()
{
void ave_stu(void);//计算学生平均成绩
void ave_cla(void);//计算课程平均成绩
float highest();//计算最高成绩
float lowest();//计算最低成绩
printf("请输入班级总人数和课程总数:");
scanf("%d,%d",&L,&M);
for(int i=0;i<L;i++)
{
for(int j=0;j<M;j++)
{
printf("请输入学生%d的成绩:",i+1);
scanf("%f",&score[i][j]);
}
}
ave_stu();
ave_cla();
lowest();
highest();
for(int i=0;i<L;i++)
{
printf("学生%d的平均分为:%f\n",i+1,stu[i]);
}
for(int i=0;i<M;i++)
{
printf("课程%d的平均分为:%f\n",i,cla[i]);
}
for(int i=0;i<M;i++)
{
printf("课程%d的最高分为:%f\n",i,high[i]);
}
for(int i=0;i<M;i++)
{
printf("课程%d的最低分为:%f\n",i,low[i]);
}
}
void ave_stu(void)//计算学生平均分
{
int i,j;
float s;
for(i=0;i<L;i++)
{
for(j=0,s=0;j<M;j++)
{
s+=score[i][j];
}
stu[i]=s/M;
}
}
void ave_cla(void)//计算课程平均分
{
int i,j;
float s;
for(j=0;j<M;j++)
{ s=0;
for(i=0;i<L;i++)
{
s+=score[i][j];
}
cla[j]=s/L;
}
}
float higest()//计算最高分
{ int i,j,h;
float higest,high[9];
h=score[i][j];
for(j=0;j<M;j++)
{
h=0;
for(i=0;i<L;i++)
{
if(score[i][j]>h)
h=score[i][j];
}
high[j]=h;
}
return(h);
}
float lowest()//计算低分
{ int i,j,l;
float lowest,low[9];
l=score[i][j];
for(j=0;j<M;j++)
{
l=0;
for(i=0;i<L;i++)
{
if(score[i][j]<l)
l=score[i][j];
}
low[j]=l;
}
return(l);
}