java简单学生成绩系统_JAVA 实现简单的学生成绩管理系统
时间: 2023-12-23 12:04:08 浏览: 25
好的,我会尽力回答你的问题。
首先,我可以给你一个简单的思路来实现一个学生成绩管理系统。
1. 定义一个学生类,包括学生的基本信息和成绩信息,如学号、姓名、年龄、语文成绩、数学成绩等。
2. 定义一个成绩管理类,包括添加学生信息、修改学生信息、查询学生信息和删除学生信息等功能。
3. 在成绩管理类中,可以使用数组或集合来存储学生信息。添加学生信息时,可以通过键盘输入学生的基本信息和成绩信息,并将其添加到数组或集合中。
4. 修改学生信息时,可以先输入要修改的学生的学号,然后再输入要修改的内容,最后更新学生信息。
5. 查询学生信息时,可以通过学号或姓名来查询学生信息,并输出查询结果。
6. 删除学生信息时,可以通过学号或姓名来删除学生信息,并将该学生从数组或集合中移除。
综上所述,以上是一个简单的学生成绩管理系统的实现思路,你可以根据自己的需求和实际情况进行修改和优化。同时,你也可以参考一下以下的代码实现:
```java
// 学生类
class Student {
private String id; // 学号
private String name; // 姓名
private int age; // 年龄
private double chinese; // 语文成绩
private double math; // 数学成绩
public Student() {}
public Student(String id, String name, int age, double chinese, double math) {
this.id = id;
this.name = name;
this.age = age;
this.chinese = chinese;
this.math = math;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public double getChinese() {
return chinese;
}
public void setChinese(double chinese) {
this.chinese = chinese;
}
public double getMath() {
return math;
}
public void setMath(double math) {
this.math = math;
}
@Override
public String toString() {
return "学号:" + id + "\t姓名:" + name + "\t年龄:" + age + "\t语文成绩:" + chinese + "\t数学成绩:" + math;
}
}
// 成绩管理类
class ScoreManager {
private List<Student> students;
public ScoreManager() {
students = new ArrayList<>();
}
// 添加学生信息
public void addStudent(Student stu) {
students.add(stu);
}
// 修改学生信息
public void updateStudent(String id, String field, String value) {
for (Student stu : students) {
if (stu.getId().equals(id)) {
switch (field) {
case "name":
stu.setName(value);
break;
case "age":
stu.setAge(Integer.parseInt(value));
break;
case "chinese":
stu.setChinese(Double.parseDouble(value));
break;
case "math":
stu.setMath(Double.parseDouble(value));
break;
default:
System.out.println("输入的字段不存在!");
return;
}
System.out.println("修改成功!");
return;
}
}
System.out.println("学号不存在!");
}
// 查询学生信息
public void queryStudent(String keyword) {
boolean flag = false;
for (Student stu : students) {
if (stu.getId().equals(keyword) || stu.getName().equals(keyword)) {
System.out.println(stu);
flag = true;
}
}
if (!flag) {
System.out.println("未找到学生信息!");
}
}
// 删除学生信息
public void deleteStudent(String keyword) {
Iterator<Student> iterator = students.iterator();
while (iterator.hasNext()) {
Student stu = iterator.next();
if (stu.getId().equals(keyword) || stu.getName().equals(keyword)) {
iterator.remove();
System.out.println("删除成功!");
}
}
}
// 输出所有学生信息
public void printAllStudents() {
for (Student stu : students) {
System.out.println(stu);
}
}
}
// 测试类
public class Test {
public static void main(String[] args) {
ScoreManager manager = new ScoreManager();
Scanner sc = new Scanner(System.in);
while (true) {
System.out.println("请输入操作序号(1.添加 2.修改 3.查询 4.删除 5.输出所有学生信息 6.退出):");
int choice = sc.nextInt();
switch (choice) {
case 1:
System.out.println("请输入学生信息(学号 姓名 年龄 语文成绩 数学成绩):");
String id = sc.next();
String name = sc.next();
int age = sc.nextInt();
double chinese = sc.nextDouble();
double math = sc.nextDouble();
manager.addStudent(new Student(id, name, age, chinese, math));
System.out.println("添加成功!");
break;
case 2:
System.out.println("请输入要修改的学生的学号:");
String id2 = sc.next();
System.out.println("请输入要修改的字段(name、age、chinese、math):");
String field = sc.next();
System.out.println("请输入新的值:");
String value = sc.next();
manager.updateStudent(id2, field, value);
break;
case 3:
System.out.println("请输入要查询的关键字(学号或姓名):");
String keyword = sc.next();
manager.queryStudent(keyword);
break;
case 4:
System.out.println("请输入要删除的关键字(学号或姓名):");
String keyword2 = sc.next();
manager.deleteStudent(keyword2);
break;
case 5:
manager.printAllStudents();
break;
case 6:
System.out.println("程序已退出!");
System.exit(0);
default:
System.out.println("输入的操作序号有误,请重新输入!");
}
}
}
}
```
以上就是一个简单的学生成绩管理系统的实现,希望能对你有所帮助。如果有什么问题,也可以随时问我。