在表4.4中编程求每个学生的最高分和每门课的平均分,并按表格形式输出。
表4.4 学生成绩情况表二
学 号 数 学 语 文 外 语 最高分
1001 90 80 85
1002 70 75 80
1003 65 70 75
1004 85 50 60
1005 80 90 70
平 均 分
一个实现:
#include <stdio.h>
int main(void){
int id[5]={1001,1002,1003,1004,1005}; //存储学号
int scores[5][3]={{90,80,85},{70,75,80},{65,70,75},{85,50,60},{80,90,70}}; //成绩
int max[5]; //存储5个学生的最高分
double avg[3]; //存储3门功课的平均分
int i,j;
for(i=0;i<5;i++){ //计算每个学生的最高分
max[i]=scores[i][0];
for(j=0;j<3;j++){
if(scores[i][j]>max[i]){
max[i] = scores[i][j];
}
}
}
for(j=0;j<3;j++){ //计算三门功课的平均分
avg[j]= (double)(scores[0][j]+scores[1][j]+scores[2][j]+scores[3][j]+scores[4][j])/5;
}
//打印结果
printf("学号\t数学\t语文\t外语\t最高分\n");
for(i=0;i<5;i++){
printf("%d\t",id[i]); //打印学号
for(j=0;j<3;j++){ //打印语数外成绩
printf("%d\t",scores[i][j]);
}
printf("%d\n",max[i]); //打印最高分
}
printf("平均分\t");
for(j=0;j<3;j++){ //打印平均分
printf("%.0f\t",avg[j]);
}
return 0;
}