weixin_48456474 2022-05-24 18:53 采纳率: 100%
浏览 34
已结题

一直报c2143错误,符号没有问题怎么办


#include<stdio.h>
#define N 10
#define M 5
float score[N][M];
float a_stu[N],a_cour[M];
int r,c;
int main()
{int i,j;
float h;
float s_var(void);
float highest();
void input_stu(void);
void aver_stu(void);
void aver_cour(void);
input_stu();
aver_stu();
printf("\n学号 课程1 课程2 课程3 课程4 课程5 平均\n");
for(i=0;i<N;i++)
{printf("\n 学号 %2d",i+1);
for(j=0;j<M;j++)
{printf("%8.2f", score[i][j]);
printf("%8.2f\n" ,a_stu[i]);
}
printf("\n平均:");
for(j=0;j<M;j++)
printf("%8.2f" ,a_cour[j]);
printf("\n");
h=highest();
printf("最高:%7.2f 学号 %2d  课程  %2d\n",h,r,c);
return  0;
}
void input_stu(void);
 {int i,j;
  for(i=0;i<N;i++)
   {printf("\n 输入学生成绩%2d:\n",i+1);
 for(j=0;j<M;j++)
scanf("%f",&score[i][j]);
}
}
void aver_stu(void);
{int i,j;
float s;
for (i=0;i<N;i++)
{for (j=0,s=0;j<M;j++)
s+=score[i][j];
a_stu[i]=s/5.0f;
}
     }
void aver_cour(void);
{int i,j;
 float s;
for (j=0;j<M;i++)
    {s=0;
     for(i=0;i<N;i++)
     s+=score[i][j];
   a_cour[i]=s/(float)N;
     }
}
float highest();
   {float high;
    int i,j;
    high=score[0][0];
     for(i=0;i<N;i++)       
     for(i=0;i<M;i++)
         if(score[i][j]>high)
           {high=score[i][j];
            r=i+1;
            c=i+1;
}
 return(high);
}
float s_var(void);
{int i;
float sumx,sumxn;
sumx=0.0;
sumxn=0.0;
for(i=0;i<N;i++)
 {sumx+=a_stu[i]*a_stu[i];
  sumxn+=a_stu[i];
}
return(sumx/N-(sumxn/N)*(sumxn/N));
}
}

1>c:\users\15631\documents\visual studio 2010\projects\1\1.c(32): error C2143: 语法错误 : 缺少“;”(在“类型”的前面)
1>c:\users\15631\documents\visual studio 2010\projects\1\1.c(40): error C2143: 语法错误 : 缺少“;”(在“类型”的前面)
1>c:\users\15631\documents\visual studio 2010\projects\1\1.c(49): error C2143: 语法错误 : 缺少“;”(在“类型”的前面)
1>c:\users\15631\documents\visual studio 2010\projects\1\1.c(59): error C2143: 语法错误 : 缺少“;”(在“类型”的前面)
1>c:\users\15631\documents\visual studio 2010\projects\1\1.c(72): error C2143: 语法错误 : 缺少“;”(在“类型”的前面)

  • 写回答

1条回答 默认 最新

  • 程序喵正在路上 后端领域新星创作者 2022-05-24 19:07
    关注

    函数的定义后面不要写分号,然后最后写主函数外面
    希望采纳一下啊

    img

    #include<stdio.h>
    #define N 10
    #define M 5
    float score[N][M];
    float a_stu[N], a_cour[M];
    int r, c;
    
    float s_var();
    float highest();
    void input_stu();
    void aver_stu();
    void aver_cour();
    
    int main()
    {
        int i, j;
        float h;
        input_stu();
        aver_stu();
        printf("\n学号 课程1 课程2 课程3 课程4 课程5 平均\n");
        for (i = 0; i < N; i++)
        {
            printf("\n 学号 %2d", i + 1);
            for (j = 0; j < M; j++)
            {
                printf("%8.2f", score[i][j]);
                printf("%8.2f\n", a_stu[i]);
            }
            printf("\n平均:");
            for (j = 0; j < M; j++)
                printf("%8.2f", a_cour[j]);
            printf("\n");
            h = highest();
            printf("最高:%7.2f 学号 %2d  课程  %2d\n", h, r, c);
            return  0;
        }
        
    }
    
    void input_stu()
    {int i, j;
    for (i = 0; i < N; i++)
    {
        printf("\n 输入学生成绩%2d:\n", i + 1);
        for (j = 0; j < M; j++)
            scanf_s("%f", &score[i][j]);
    }
    }
    void aver_stu()
    {int i, j;
    float s;
    for (i = 0; i < N; i++)
    {
        for (j = 0, s = 0; j < M; j++)
            s += score[i][j];
        a_stu[i] = s / 5.0f;
    }
    }
    void aver_cour()
    {int i, j;
    float s;
    for (j = 0; j < M; i++)
    {
        s = 0;
        for (i = 0; i < N; i++)
            s += score[i][j];
        a_cour[i] = s / (float)N;
    }
    }
    float highest()
    {float high;
    int i, j = 0;
    high = score[0][0];
    for (i = 0; i < N; i++)
        for (i = 0; i < M; i++)
            if (score[i][j] > high)
            {
                high = score[i][j];
                r = i + 1;
                c = i + 1;
            }
    return(high);
    }
    float s_var()
    {
        int i;
        float sumx, sumxn;
        sumx = 0.0;
        sumxn = 0.0;
        for (i = 0; i < N; i++)
        {
            sumx += a_stu[i] * a_stu[i];
            sumxn += a_stu[i];
        }
        return(sumx / N - (sumxn / N) * (sumxn / N));
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 6月1日
  • 已采纳回答 5月24日
  • 创建了问题 5月24日

悬赏问题

  • ¥15 Oracle中如何从clob类型截取特定字符串后面的字符
  • ¥15 想通过pywinauto自动电机应用程序按钮,但是找不到应用程序按钮信息
  • ¥15 MATLAB中streamslice问题
  • ¥15 如何在炒股软件中,爬到我想看的日k线
  • ¥15 seatunnel 怎么配置Elasticsearch
  • ¥15 PSCAD安装问题 ERROR: Visual Studio 2013, 2015, 2017 or 2019 is not found in the system.
  • ¥15 (标签-MATLAB|关键词-多址)
  • ¥15 关于#MATLAB#的问题,如何解决?(相关搜索:信噪比,系统容量)
  • ¥500 52810做蓝牙接受端
  • ¥15 基于PLC的三轴机械手程序