#include<stdio.h>int main (){ void averagescore(int a[][5],float ave1[10]); void kcaverage(int a[][5],float ave2[10]); int high(int a[][5]); int stu[10][5]; float ave1[10],ave2[5]; int i,j,h; printf("请输入该10个学生的成绩:"); for(i=0;i<10;i++) for(j=0;j<5;j++) { scanf("%d",&stu[i][j]); } printf("每个学生的成绩平均值为:\n"); averagescore(stu,ave1); printf("\n每门课程的平均分为:\n"); kcaverage(stu,ave2); h==high(stu[10][5]); printf("最高的平均分为:");return 0;}void averagescore(int a[10][5],float ave1[10]){ int i,j; float sum,ave; for(i=0;i<10;i++) { sum=0.0; for(j=0;j<5;j++) { sum+=a[i][j]; } ave=sum/5; printf("第%d个学生的平均分为:%f",i+1,ave); }}void courseaverage(int a[10][5],float ave2){ int i,j; float sum,ave; for(i=0;i<5;i++) { for(j=0,sum=0.0;j<10;j++) sum+=a[j][i]; ave=sum/10; printf("第%d的课程平均分为:",i+1,ave);}}int high(int a[10][5]){ int i,j,ave=0,stu; for(i=0;i<10;i++) { for(j=0;j<5;j++) { if(a[i][j]>ave) { ave=a[i][j]; } } } return ave;}
时间: 2024-04-28 12:23:11 浏览: 88
#include <stdio.h>
4星 · 用户满意度95%
这段代码是一个计算10个学生5门课程成绩的平均分和每个课程的平均分,以及最高平均分的程序。其中,函数averagescore用于计算每个学生的平均分,函数kcaverage用于计算每门课程的平均分,函数high用于计算最高平均分。但是,该代码存在一些问题:
1. 函数courseaverage未定义,但在主函数中被调用。
2. 函数kcaverage的形参是一个一维数组,但在函数中使用了二维数组a[10][5]。
3. 函数high的返回值类型是int,但应该是float,因为最高平均分可能为小数。
如果您需要我修改这段代码,请告诉我您的具体需求,我会尽力满足您的要求。
阅读全文