用java代码写一个学生选课管理系统
时间: 2023-09-21 19:08:13 浏览: 71
好的,我可以给你提供一个学生选课管理系统的Java代码框架,你可以在此基础上进行修改和完善。以下是代码:
```java
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class StudentCourseManagementSystem {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
List<Student> studentList = new ArrayList<>();
List<Course> courseList = new ArrayList<>();
// 初始化课程信息
// 例如:courseList.add(new Course(1, "Java程序设计", 3));
// ...
while (true) {
System.out.println("----------------------------");
System.out.println("欢迎进入学生选课管理系统,请输入对应数字进行操作:");
System.out.println("1. 学生注册");
System.out.println("2. 学生登录");
System.out.println("3. 查看课程列表");
System.out.println("4. 学生选课");
System.out.println("5. 学生退课");
System.out.println("6. 查看已选课程");
System.out.println("7. 退出系统");
System.out.println("----------------------------");
int choice = scanner.nextInt();
switch (choice) {
case 1:
// 学生注册
System.out.println("请输入学生姓名:");
String name = scanner.next();
System.out.println("请输入学生年龄:");
int age = scanner.nextInt();
System.out.println("请输入学生性别:");
String gender = scanner.next();
System.out.println("请输入学生学号:");
String id = scanner.next();
System.out.println("请输入学生密码:");
String password = scanner.next();
Student student = new Student(name, age, gender, id, password);
studentList.add(student);
System.out.println("注册成功!");
break;
case 2:
// 学生登录
System.out.println("请输入学生学号:");
String loginId = scanner.next();
System.out.println("请输入学生密码:");
String loginPassword = scanner.next();
boolean loginSuccess = false;
for (Student s : studentList) {
if (s.getId().equals(loginId) && s.getPassword().equals(loginPassword)) {
System.out.println("登录成功!");
loginSuccess = true;
break;
}
}
if (!loginSuccess) {
System.out.println("登录失败,请检查学号或密码!");
}
break;
case 3:
// 查看课程列表
System.out.println("课程列表如下:");
for (Course c : courseList) {
System.out.println(c.getId() + " " + c.getName() + " " + c.getCredit());
}
break;
case 4:
// 学生选课
System.out.println("请输入要选课的学生学号:");
String selectId = scanner.next();
System.out.println("请输入要选的课程编号:");
int selectCourseId = scanner.nextInt();
boolean selectSuccess = false;
// 选课操作
// ...
break;
case 5:
// 学生退课
System.out.println("请输入要退课的学生学号:");
String dropId = scanner.next();
System.out.println("请输入要退的课程编号:");
int dropCourseId = scanner.nextInt();
boolean dropSuccess = false;
// 退课操作
// ...
break;
case 6:
// 查看已选课程
System.out.println("请输入要查看的学生学号:");
String viewId = scanner.next();
// 查看已选课程操作
// ...
break;
case 7:
// 退出系统
System.exit(0);
break;
default:
System.out.println("输入有误,请重新输入!");
break;
}
}
}
}
class Student {
private String name;
private int age;
private String gender;
private String id;
private String password;
private List<Course> selectedCourses;
public Student(String name, int age, String gender, String id, String password) {
this.name = name;
this.age = age;
this.gender = gender;
this.id = id;
this.password = password;
selectedCourses = new ArrayList<>();
}
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 String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public List<Course> getSelectedCourses() {
return selectedCourses;
}
public void setSelectedCourses(List<Course> selectedCourses) {
this.selectedCourses = selectedCourses;
}
public void addSelectedCourse(Course course) {
selectedCourses.add(course);
}
public void removeSelectedCourse(Course course) {
selectedCourses.remove(course);
}
}
class Course {
private int id;
private String name;
private int credit;
public Course(int id, String name, int credit) {
this.id = id;
this.name = name;
this.credit = credit;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getCredit() {
return credit;
}
public void setCredit(int credit) {
this.credit = credit;
}
}
```
这段代码提供了一个基本的学生选课管理系统框架,包含学生注册、登录、查看课程列表、选课、退课、查看已选课程等功能。你可以在此基础上进行改进和完善。