package PingFen;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class ExamScoreSystem {
private static List<Student> students = new ArrayList<>();
public static void main(String[] args) {
initData();
System.out.println("欢迎使用高考评分系统!");
Scanner scanner = new Scanner(System.in);
while (true) {
System.out.println("--------------------------");
System.out.println("请选择操作:");
System.out.println("1. 录入考生信息");
System.out.println("2. 显示考生信息");
System.out.println("3. 查询最高分");
System.out.println("4. 退出");
int choice = scanner.nextInt();
switch (choice) {
case 1:
addStudent(scanner);
break;
case 2:
showStudents();
break;
case 3:
showHighestScores(scanner);
break;
case 4:
System.out.println("退出系统,谢谢使用!");
return;
default:
System.out.println("无效的操作,请重新选择!");
}
}
}
private static void initData() {
students.add(new Student("张三", "001", 80, 90, 85, 90));
students.add(new Student("李四", "002", 75, 85, 90, 80));
students.add(new Student("王五", "003", 90, 95, 85, 95));
}
private static void addStudent(Scanner scanner) {
System.out.println("请输入考生姓名:");
String name = scanner.next();
System.out.println("请输入考生编号:");
String id = scanner.next();
System.out.println("请输入语文成绩:");
int chineseScore = scanner.nextInt();
System.out.println("请输入数学成绩:");
int mathScore = scanner.nextInt();
System.out.println("请输入英语成绩:");
int englishScore = scanner.nextInt();
System.out.println("综合成绩为:");
int comprehensiveScore =chineseScore+mathScore+englishScore;
Student student = new Student(name, id, chineseScore, mathScore, englishScore, comprehensiveScore);
students.add(student);
System.out.println("考生信息录入成功!");
}
private static void showStudents() {
System.out.println("所有考生信息如下:");
for (Student student : students) {
System.out.println("姓名:" + student.getName());
System.out.println("编号:" + student.getId());
System.out.println("语文成绩:" + student.getChineseScore());
System.out.println("数学成绩:" + student.getMathScore());
System.out.println("英语成绩:" + student.getEnglishScore());
System.out.println("综合成绩:" + student.getComprehensiveScore());
System.out.println("总成绩:" + student.getTotalScore());
System.out.println("--------------------------");
}
}
private static void showHighestScores(Scanner scanner) {
while (true) {
System.out.println("请选择查询类型:");
System.out.println("1. 打印总分最高分");
System.out.println("2. 打印数学最高分");
System.out.println("3. 打印语文最高分");
System.out.println("4. 打印英语最高分");
System.out.println("5. 返回上级菜单");
int choice = scanner.nextInt();
switch (choice) {
case 1:
int maxTotalScore = getMaxTotalScore();
System.out.println("总分最高分:" + maxTotalScore);
break;
case 2:
int maxMathScore = getMaxMathScore();
System.out.println("数学最高分:" + maxMathScore);
break;
case 3:
int maxChineseScore = getMaxChineseScore();
System.out.println("语文最高分:" + maxChineseScore);
break;
case 4:
int maxEnglishScore = getMaxEnglishScore();
System.out.println("英语最高分:" + maxEnglishScore);
break;
case 5:
return;
default:
System.out.println("无效的操作,请重新选择!");
}
}
}
private static int getMaxTotalScore() {
int maxTotalScore = 0;
for (Student student : students) {
if (student.getTotalScore() > maxTotalScore) {
maxTotalScore = student.getTotalScore();
}
}
return maxTotalScore;
}
private static int getMaxMathScore() {
int maxMathScore = 0;
for (Student student : students) {
if (student.getMathScore() > maxMathScore) {
maxMathScore = student.getMathScore();
}
}
return maxMathScore;
}
private static int getMaxChineseScore() {
int maxChineseScore = 0;
for (Student student : students) {
if (student.getChineseScore() > maxChineseScore) {
maxChineseScore = student.getChineseScore();
}
}
return maxChineseScore;
}
private static int getMaxEnglishScore() {
int maxEnglishScore = 0;
for (Student student : students) {
if (student.getEnglishScore() > maxEnglishScore) {
maxEnglishScore = student.getEnglishScore();
}
}
return maxEnglishScore;
}
}