java数组输入学生成绩
时间: 2023-11-12 17:09:28 浏览: 56
在你的代码中,你定义了一个一维数组来存储学生成绩,这导致了你在循环中给每个学生的成绩赋值时,只能覆盖前一个学生的成绩。为了解决这个问题,你可以将学生成绩数组改为二维数组,并在循环中使用两个索引来确定具体的学生和课程。
下面是修改后的代码:
```
public class Array_score_avg {
public static void main(String[] args) {
int[][] arr = new int[5][6]; // 5个学生,每个学生6门课程
Scanner sc = new Scanner(System.in);
for (int i = 0; i < arr.length; i++) {
for (int j = 0; j < arr[i].length; j++) {
System.out.println("请录入第" + (i + 1) + "个学生的第" + (j + 1) + "门课程的成绩:");
arr[i][j] = sc.nextInt();
}
}
// 其他部分的代码保持不变
}
}
```
相关问题
二维数组学生成绩java
好的,你可以使用以下代码来创建一个二维数组来存储学生成绩:
```
int[][] scores = new int[5][3];
```
这个二维数组有5行和3列,可以存储5个学生的3门课程成绩。你可以使用循环来输入或输出学生成绩,例如:
```
// 输入学生成绩
Scanner scanner = new Scanner(System.in);
for (int i = 0; i < scores.length; i++) {
System.out.println("请输入第" + (i+1) + "个学生的成绩:");
for (int j = 0; j < scores[i].length; j++) {
scores[i][j] = scanner.nextInt();
}
}
// 输出学生成绩
for (int i = 0; i < scores.length; i++) {
System.out.print("第" + (i+1) + "个学生的成绩:");
for (int j = 0; j < scores[i].length; j++) {
System.out.print(scores[i][j] + " ");
}
System.out.println();
}
```
Java班级人数为4,创建数组存储学生成绩,键盘输入成绩、统计出总成绩、最高分和平均分
好的,这是一个简单的Java代码实现,可以参考一下:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
int[] scores = new int[4]; // 创建数组存储学生成绩
Scanner scanner = new Scanner(System.in);
int sum = 0; // 总成绩
int max = 0; // 最高分
for (int i = 0; i < scores.length; i++) {
System.out.print("请输入第" + (i+1) + "个学生的成绩:");
scores[i] = scanner.nextInt();
sum += scores[i]; // 累加总成绩
if (scores[i] > max) { // 更新最高分
max = scores[i];
}
}
double average = (double)sum / scores.length; // 计算平均分
System.out.println("总成绩为:" + sum);
System.out.println("最高分为:" + max);
System.out.println("平均分为:" + average);
}
}
```
在运行程序时,会提示用户依次输入每个学生的成绩,然后统计出总成绩、最高分和平均分,并输出结果。