学生成绩管理 功能要求:按照以下要求构造出学生类Student,设计和编写相应的成员变量,构造函数以及成员方法,并编写StudentScore类来完成以下的功能: 编写控制台主界面,根据提示,输入数字:1代表显示所有学生信息,2代表计算当前每个学生的平均成绩,3代表退出程序。用Java完成,且用简单方法
时间: 2024-03-24 18:38:51 浏览: 92
用java实现学生成绩管理
好的,根据您的要求,我给您提供以下的代码实现:
```
import java.util.ArrayList;
import java.util.Scanner;
public class Student {
private String name;
private int id;
private ArrayList<Double> scores; //使用ArrayList来存储学生的多个成绩
public Student(String name, int id, ArrayList<Double> scores) {
this.name = name;
this.id = id;
this.scores = scores;
}
public String getName() {
return name;
}
public int getId() {
return id;
}
public ArrayList<Double> getScores() {
return scores;
}
public double getAverageScore() { //计算学生的平均成绩
double sum = 0;
for (double score : scores) {
sum += score;
}
return sum / scores.size();
}
}
public class StudentScore {
private ArrayList<Student> students;
public StudentScore() {
students = new ArrayList<Student>();
}
public void addStudent(Student student) { //添加学生
students.add(student);
}
public void showAllStudents() { //显示所有学生
for (Student student : students) {
System.out.println("姓名:" + student.getName() + ",学号:" + student.getId());
}
}
public void showAverageScores() { //显示所有学生的平均成绩
for (Student student : students) {
System.out.println("姓名:" + student.getName() + ",平均成绩:" + student.getAverageScore());
}
}
public static void main(String[] args) { //控制台主界面
StudentScore studentScore = new StudentScore();
studentScore.addStudent(new Student("张三", 1, new ArrayList<Double>() {{
add(80.0);
add(90.0);
add(85.0);
}}));
studentScore.addStudent(new Student("李四", 2, new ArrayList<Double>() {{
add(75.0);
add(85.0);
add(80.0);
}}));
studentScore.addStudent(new Student("王五", 3, new ArrayList<Double>() {{
add(90.0);
add(95.0);
add(92.0);
}}));
Scanner scanner = new Scanner(System.in);
while (true) {
System.out.println("请输入数字选择操作:1.显示所有学生信息,2.计算当前每个学生的平均成绩,3.退出程序");
int choice = scanner.nextInt();
if (choice == 1) {
studentScore.showAllStudents();
} else if (choice == 2) {
studentScore.showAverageScores();
} else if (choice == 3) {
break;
} else {
System.out.println("输入有误,请重新输入!");
}
}
System.out.println("程序已退出!");
}
}
```
在这里,我们先定义了学生类Student,包括学生的姓名、学号和成绩列表。其中,成绩列表使用ArrayList来存储学生的多个成绩,并提供了计算学生平均成绩的方法。
然后,我们定义了StudentScore类,包括学生列表和一些操作方法,如添加学生、显示所有学生信息和计算每个学生的平均成绩。
最后,在控制台主界面中,我们使用Scanner类来读取用户输入的数字,根据输入的数字来选择相应的操作,如显示所有学生信息、计算每个学生的平均成绩或退出程序。
阅读全文