syntax error : missing ')' before type 'void'?

#include<stdio.h>
#define N 10
#define M 5
float a_stu[N],a_cour[M];
int score[N][M],r,c;
void input(void)
{
	int i,j;
	for(i=0;i<N;i++)
	{
		printf("\ninput score of student%2d:\n",i+1);
		for(j=0;j<M;j++)
			scanf("%d",&score[i][j]);
	}
}
void aver_stu(void)
{
	int i,j;
	float s;
	for(i=0;i<N;i++)
	{
		for(j=0;j<M;j++)
			s+=score[i][j];
		a_stu[i]=s/M;
	}
}
void aver_cour(void)
{
	int i,j;
	float s;
	for(i=0;i<M;i++)
	{
		s=0;
		for(j=0;j<N;j++)
			s+=score[i][j];
		a_cour[j]=s/N;
	}
}
int highest(void)
{
	int 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);
}
void main()
{
	int i,j,h;
	input(void);
	aver_stu(void);
	aver_cour(void);
	printf("\n NO.  cour1	cour2	cour3	cour4	cour5 aver\n");
	for(i=0;i<N;i++)
	{
		printf("\n%2d",i+1);
		for(j=0;j<M;j++)
			printf("%5d",score[i][j]);
		printf("%8.2f",a_stu[j]);
	}
		printf("\naverage:");
		for(j=0;j<N;j++)
			printf("%8.2f",a_cour[j]);
		printf("\n");
		h=highest(void);
		printf("hightest:%5d    NO.%2d	course %2d\n",h,r,c);
}

 

第几行报的错误? 请往上查找, 一定有语法错误的地方。