2 有5名学生学年考试成绩如下表所示:
语文 数学 英语 体育
S1 80 75 78 93
S2 67 87 98 65
S3 86 72 60 76
S4 76 80 76 63
S5 82 70 90 67
编写程序,使用二维数组存储学生成绩,并完成下列操作:
(1) 计算并输出每名学生的平均分。
(2) 打印输出每科最高分的学生姓名和分数。
public class CSDNQ7913493 {
public static void main(String[] args) {
int[][] scores = {{80, 75, 78, 93}, {67, 87, 98, 65}, {86, 72, 60, 76}, {76, 80, 76, 63}, {82, 70, 90, 67}};
String[] names = {"S1", "S2", "S3", "S4", "S5"};
double[] avgScores = new double[5];
for (int i = 0; i < scores.length; i++) {
int sum = 0;
for (int j = 0; j < scores[i].length; j++) {
sum += scores[i][j];
}
avgScores[i] = sum / 4.0;
System.out.println(names[i] + " 的平均分为:" + avgScores[i]);
}
for (int i = 0; i < scores[0].length; i++) {
int maxScore = scores[0][i];
String maxName = names[0];
for (int j = 1; j < scores.length; j++) {
if (scores[j][i] > maxScore) {
maxScore = scores[j][i];
maxName = names[j];
}
}
System.out.println("在 " + (i + 1) + " 科目中,最高分为:" + maxScore + ",是 " + maxName + " 获得的");
}
}
}