java声明一个3行4列的二维数组,存储一个班级3名学生的4个成绩,通过键盘给学生录入成绩并统计每个学生平均分和每个课程平均分
时间: 2024-09-09 21:10:43 浏览: 39
在Java中声明一个3行4列的二维数组,可以通过以下方式实现:
```java
double[][] scores = new double[3][4];
```
这段代码定义了一个名为`scores`的二维数组,它包含3个一维数组,每个一维数组有4个`double`类型的元素。
为了通过键盘给每个学生录入成绩,并统计每个学生的平均分以及每个课程的平均分,我们可以编写一个程序,其大致流程如下:
1. 使用`Scanner`类来获取用户的输入。
2. 通过嵌套循环来录入每个学生的成绩。
3. 再次使用嵌套循环来计算每个学生的平均分以及每个课程的平均分。
4. 输出计算结果。
下面是一个简单的代码示例:
```java
import java.util.Scanner;
public class GradeStatistics {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
double[][] scores = new double[3][4];
// 通过嵌套循环录入成绩
for (int i = 0; i < 3; i++) {
System.out.println("请输入第 " + (i + 1) + " 名学生的成绩:");
for (int j = 0; j < 4; j++) {
System.out.print("课程 " + (j + 1) + " 的成绩:");
scores[i][j] = scanner.nextDouble();
}
}
// 初始化每个课程的总分变量
double[] totalScoresPerCourse = new double[4];
// 计算每个学生的平均分以及每个课程的平均分
for (int i = 0; i < 3; i++) {
double sum = 0;
for (int j = 0; j < 4; j++) {
sum += scores[i][j];
totalScoresPerCourse[j] += scores[i][j];
}
double studentAverage = sum / 4;
System.out.println("第 " + (i + 1) + " 名学生的平均分是:" + studentAverage);
}
// 输出每个课程的平均分
for (int i = 0; i < 4; i++) {
double courseAverage = totalScoresPerCourse[i] / 3;
System.out.println("课程 " + (i + 1) + " 的平均分是:" + courseAverage);
}
scanner.close();
}
}
```
在这个程序中,我们首先通过两层`for`循环录入每个学生的成绩,并将成绩存储在`scores`数组中。接着,我们使用两层`for`循环计算每个学生的平均分和每个课程的平均分,并将结果输出。
阅读全文