c语言错误 error C2143: syntax error : missing ';' before 'type'

#include"stdio.h"
#define N 10
struct student
{
int number[20];
char name[20];
float score[3];
float average;
}stu[N];
//自定义出数据
void average(struct student s[],int n)
{
int i,j;
for(i=0;i<n;i++)
{
s[i].average=0;
for(j=0;j<3;j++)
s[i].average+=s[i].score[j];
s[i].average/=3;
}
}
//求各学生的平均分
void input(struct student s[],int n)
{
int i,j;
float a=0;
for(i=0;i<n;i++)
{
printf("%d号学生\n",i+1);
printf("请输入学号:");
scanf("%d",&s[i].number);
printf("姓名:");
scanf("%s",&s[i].name);
for(j=0;j<3;j++)
{
printf("第%d门成绩为:",j+1);
scanf("%f",&s[i].score[j]);
}
printf("\n");
}

}
//输入学生数据的函数
int max(struct student s[],int n)
{
int i,j; //j代表的是第几个学生
float a;
a=s[0].average;
for(i=1;i<n;i++)
{
if(a<s[i].average)
{
a=s[i].average;
j=i;
}
return j;
}//分数最大的学生的函数
void main()
{
int i,j;
input(stu,N);//输入数据
average(stu,N);//求平均数
printf("|***学号***|***姓名***|**1成绩**|**2成绩**|**3成绩**|*平均分数*|");
for(i=0;i<N;i++)
printf(" %-11d %-10s %9.2f %9.2f %9.2f %10.2f",stu[i].number,stu[i].name,stu[i].score[0],stu[i].score[1],stu[i].score[2],stu[i].average);
j=max(stu,N);
printf("获得最高成绩的学生的信息为:\n");
printf(" %-11d %-10s %9.2f %9.2f %9.2f %10.2f",stu[j].number,stu[j].name,stu[j].score[0],stu[j].score[1],stu[j].score[2],stu[j].average);
}

#include"stdio.h"
#define N 10
struct student
{
int number;
char name[20];
float score[3];
float average;
}stu[N];
//自定义出数据
void average(struct student s[],int n)
{
    int i,j;
    for(i=0;i<n;i++)
    {
        s[i].average=0;
        for(j=0;j<3;j++)
            s[i].average+=s[i].score[j];
        s[i].average/=3;
    }
}
//求各学生的平均分
void input(struct student s[],int n)
{
    int i,j;
    //float a=0;
    for(i=0;i<n;i++)
    {
        printf("%d号学生\n",i+1);
        printf("请输入学号:");
        scanf("%d",&s[i].number);
        printf("姓名:");
        scanf("%s",s[i].name);
        for(j=0;j<3;j++)
        {
            printf("第%d门成绩为:",j+1);
            scanf("%f",&s[i].score[j]);
        }
        printf("\n");
    }

}
//输入学生数据的函数
int max(struct student s[],int n)
{
    int i,j; //j代表的是第几个学生
    float a;
    a=s[0].average;
    for(i=1;i<n;i++)
    {
        if(a<s[i].average)
        {
            a=s[i].average;
            j=i;
        }
    }
    return j;
}//分数最大的学生的函数

int main()
{
int i,j;
input(stu,N);//输入数据
average(stu,N);//求平均数
printf("|***学号***|***姓名***|**1成绩**|**2成绩**|**3成绩**|*平均分数*|");
for(i=0;i<N;i++)
printf(" %-11d %-10s %9.2f %9.2f %9.2f %10.2f",stu[i].number,stu[i].name,stu[i].score[0],stu[i].score[1],stu[i].score[2],stu[i].average);
j=max(stu,N);
printf("获得最高成绩的学生的信息为:\n");
printf(" %-11d %-10s %9.2f %9.2f %9.2f %10.2f",stu[j].number,stu[j].name,stu[j].score[0],stu[j].score[1],stu[j].score[2],stu[j].average); 
return 0;
}追问

您好,我把void main改为int main还是不对啊

追答

都用我的吧,改了七八处的样子

温馨提示:答案为网友推荐,仅供参考
相似回答