现有一班级有十名学生, 请使用二维数组输入并存储这十名学生的各科成绩(语文,数学,英语)求各科平均分以及最高分求个人平均分
时间: 2024-12-14 15:22:01 浏览: 9
二维数组计算班级成绩共2页.pdf.zip
在一个班级里,我们可以使用一个二维数组来存储每个学生的三门课程成绩。假设我们有一个名为`students`的二维数组,其中每一行代表一个学生,每三个元素分别对应语文、数学和英语的成绩。下面是一个例子:
```java
int[][] students = {
{85, 90, 92}, // 学生1的成绩
{78, 86, 89}, // 学生2的成绩
// ... 其他学生依次类推
{100, 95, 98} // 学生10的成绩
};
// 计算各科平均分
double[] subjectAverages = new double[3];
for (int[] row : students) {
for (int i = 0; i < 3; i++) {
subjectAverages[i] += row[i]; // 汇总每科分数
}
}
for (int i = 0; i < 3; i++) {
subjectAverages[i] /= students.length; // 平均值 = 总分 / 学生数
}
// 计算各科最高分
int[] maxScores = new int[3];
for (int[] row : students) {
for (int i = 0; i < 3; i++) {
if (row[i] > maxScores[i]) {
maxScores[i] = row[i];
}
}
}
// 求个人平均分
double[] personalAverages = new double[students.length];
for (int i = 0; i < students.length; i++) {
personalAverages[i] = calculateAverage(students[i]);
}
// 辅助函数计算单个学生的平均分
private double calculateAverage(int[] scores) {
double sum = 0;
for (int score : scores) {
sum += score;
}
return sum / 3;
}
// 打印结果
System.out.println("各科平均分: " + Arrays.toString(subjectAverages));
System.out.println("各科最高分: " + Arrays.toString(maxScores));
System.out.println("个人平均分: " + Arrays.toString(personalAverages));
阅读全文