请问有什么错,需要怎样改?一个学习小组有五人,每人有三门课的考试成绩 ,求全组分科的平均成绩和各科总平均成绩 。


#include<stdio.h> 
#define ROW 3
#define COL 5
int main(){
    int a[ROW][COL],i,j,m=0,n=0,k=0,q=0;
    int a[5],b[5],c[5];
    a[5]={90,91,92,93,94};
    b[5]={90,91,92,93,94};
    c[5]={90,91,92,93,94};
    for(i=0;i<ROW;i++){
    for(j=0;j<COL;j++){
        scanf("%d",&a[ROW][COL]);
    }
    }
    for(i=0;i<1;i++){
    for(j=0;j<COL;j++){
        if((i*j)%COL==0)
        prinf("%d",a[5]);
    }     
    }
    for(i=1;i<2;i++){
    for(j=0;j<COL;j++){
        if((i*j)%COL==0)
        prinf("%d",b[5]);
    }     
    }
    for(i=2;i<ROW;i++){
    for(j=0;j<COL;j++){
        if((i*j)%COL==0)
        prinf("%d",c[5]);
    }     
    }
    m=a[5]/5;
    n=b[5]/5;
    k=c[5]/5;
    q=(m+n+k)/15;
    printf("平均成绩1为:%d\n 平均成绩2为:%d\n 平均成绩三为:%d\n 各科总平均成绩为:%d\n  ",m,n,k,q);
    return 0;
}
    

首先定义两个数组a这里是语法错误,然后是计算各科平均成绩要用数组循环,如果我没理解对你的意思,可以根据需要进行一些修改,我修改后的代码如下:


 
#include<stdio.h> 
#define ROW 3
#define COL 5
int main(){
    int a[ROW][COL],i,j,m=0,n=0,k=0,q=0;

//获取成绩输入 
    for(i=0;i<ROW;i++){
    for(j=0;j<COL;j++){
        scanf("%d",&a[i][j]);
        
    }
    }
    
    //打印成绩 
     for(i=0;i<ROW;i++){
    for(j=0;j<COL;j++){
        printf("%d ",a[i][j]);
        
    }
    printf("\n"); 
    }
    
    //计算总平均成绩,各科平均成绩用m,n,k除以5就可以了 
    for(i=0;i<COL;i++){
          m+=a[0][i];  //求第一科成绩 

          n+=a[1][i];  //求第二科成绩 

          k+=a[2][i];  //求第三科成绩 
    }
    
    

    q=(m+n+k)/15;
    printf("平均成绩1为:%d\n 平均成绩2为:%d\n 平均成绩三为:%d\n 各科总平均成绩为:%d\n  ",m/5,n/5,k/5,q);
    return 0;
}
    

img