生成java代码运行结果如下运行情况如下所示: 学院共有4个班级,成绩情况如下: 请输入班号 信息二班 请输入班级信息二班的成绩: 请输入1号学生成绩: 90 请输入2号学生成绩: 80 班级信息二班共有2位学生 其中最高分:90, 最低分:80, 平均分:85.0 是否还有用户,N:退出系统 y 请输入班号 信息三班 请输入班级信息三班的成绩: 请输入1号学生学号: 3001 请输入2号学生学号: 3001 此学号已存在,请重新输入新学号! 3002 请输入班级信息三班的成绩: 请输入1号学生成绩: 80 请输入2号学生成绩: 90 班级信息三班共有2位学生 最高分:3002号学生成绩为90 最低分:3001号学生成绩为80 平均分:85.0 是否还有用户,N:退出系统
时间: 2024-02-09 10:11:40 浏览: 23
好的,以下是Java代码的实现:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int classNum = 4;
int[][] grades = new int[classNum][];
for (int i = 0; i < classNum; i++) {
System.out.print("请输入班号 ");
String className = scanner.nextLine();
System.out.print("请输入班级" + className + "的成绩:\n");
System.out.print("请输入学生人数:");
int studentNum = scanner.nextInt();
scanner.nextLine();
grades[i] = new int[studentNum];
int maxGrade = -1;
int minGrade = 101;
int sumGrade = 0;
for (int j = 0; j < studentNum; j++) {
System.out.print("请输入" + (j + 1) + "号学生成绩:");
int grade = scanner.nextInt();
scanner.nextLine();
grades[i][j] = grade;
maxGrade = Math.max(maxGrade, grade);
minGrade = Math.min(minGrade, grade);
sumGrade += grade;
}
double averageGrade = sumGrade * 1.0 / studentNum;
System.out.println("班级信息" + className + "共有" + studentNum + "位学生");
System.out.println("其中最高分:" + maxGrade + ", 最低分:" + minGrade + ", 平均分:" + averageGrade);
System.out.print("是否还有用户,N:退出系统 y:");
String isExit = scanner.nextLine();
if (isExit.equalsIgnoreCase("N")) {
break;
}
}
scanner.close();
}
}
```
这个程序首先定义了班级数目 `classNum`,然后定义了一个二维数组 `grades` 来存放每个班级的学生成绩。在循环中,程序会要求用户输入班级号和每个学生的成绩,并且计算最高分、最低分和平均分。当用户输入 N 时,程序会结束循环并退出。