21xrx.com
2025-03-21 08:33:28 Friday
文章检索 我的文章 写文章
C++ 学生选课系统代码
2023-06-23 10:32:07 深夜i     50     0
C++ 学生选课系统 代码 学生管理 课程安排

C++ 是一种高级编程语言,它被广泛应用于各种应用程序开发和计算机科学领域。在教育领域中,C++ 也被广泛应用于学生选课系统的开发。

一个基本的 C++ 学生选课系统代码包括以下几个部分:

1. 学生类的定义: 在这个类中,我们需要定义学生的姓名、学号、性别等基本信息。此外,我们还需要定义学生的课程信息,包括学生的选修课程、成绩等。

2. 课程类的定义: 在这个类中,我们需要定义课程的名称、课程代码、授课教师等基本信息。此外,我们还需要定义课程的学生信息,包括选修该课程的学生、成绩等。

3. 选课系统类的定义: 在这个类中,我们需要定义选课系统的基本功能,包括添加新的学生和课程、删除学生和课程、查询学生和课程、修改学生和课程信息等。

一个基本的 C++ 学生选课系统代码如下所示:

#include<iostream>
#include<string>
#include<vector>
using namespace std;
class Course{
public:
  int c_id;
  string c_name;
  int c_teacher;
  Course(int id, string name, int teacher)
    c_id = id;
    c_name = name;
    c_teacher = teacher;
  
};
class Student{
public:
  int s_id;
  string s_name;
  string s_gender;
  vector<Course> s_course;
  Student(int id, string name, string gender)
    s_id = id;
    s_name = name;
    s_gender = gender;
  
};
class SelectSystem{
public:
  vector<Student> Sys_Student;
  vector<Course> Sys_Course;
  void add_Student(){
    int id;
    string name, gender;
    cin>>id>>name>>gender;
    Sys_Student.push_back(Student(id, name, gender));
  }
  void add_Course(){
    int id, teacher;
    string name;
    cin>>id>>name>>teacher;
    Sys_Course.push_back(Course(id, name, teacher));
  }
  Student search_Stu(int id){
    for(int i=0;i<Sys_Student.size();i++){
      if(Sys_Student[i].s_id == id){
        return Sys_Student[i];
      }
    }
    return Student(0, "", "");
  }
  Course search_Cou(int id){
    for(int i=0;i<Sys_Course.size();i++){
      if(Sys_Course[i].c_id == id){
        return Sys_Course[i];
      }
    }
    return Course(0, "", 0);
  }
  void del_Student(int id){
    for(int i=0;i<Sys_Student.size();i++){
      if(Sys_Student[i].s_id == id){
        Sys_Student.erase(Sys_Student.begin()+i);
        return;
      }
    }
  }
  void del_Course(int id){
    for(int i=0;i<Sys_Course.size();i++){
      if(Sys_Course[i].c_id == id){
        Sys_Course.erase(Sys_Course.begin()+i);
        return;
      }
    }
  }
  void Mod_Student(int id){
    for(int i=0;i<Sys_Student.size();i++){
      if(Sys_Student[i].s_id == id){
        string name, gender;
        cin>>name>>gender;
        Sys_Student[i].s_name = name;
        Sys_Student[i].s_gender = gender;
        return;
      }
    }
  }
  void Mod_Course(int id){
    for(int i=0;i<Sys_Course.size();i++){
      if(Sys_Course[i].c_id == id){
        string name;
        int teacher;
        cin>>name>>teacher;
        Sys_Course[i].c_name = name;
        Sys_Course[i].c_teacher = teacher;
        return;
      }
    }
  }
  void Select_Course(int sid, int cid){
    for(int i=0;i<Sys_Student.size();i++){
      if(Sys_Student[i].s_id == sid){
        for(int j=0;j<Sys_Course.size();j++){
          if(Sys_Course[j].c_id == cid){
            Sys_Student[i].s_course.push_back(Sys_Course[j]);
            return;
          }
        }
      }
    }
  }
  void Show_Student(int id){
    for(int i=0;i<Sys_Student.size();i++){
      if(Sys_Student[i].s_id == id){
        cout<<"学生姓名: "<<Sys_Student[i].s_name<<endl;
        cout<<"选修课程数目: "<<Sys_Student[i].s_course.size()<<endl;
        for(int j=0;j<Sys_Student[i].s_course.size();j++){
          cout<<"课程名称: "<<Sys_Student[i].s_course[j].c_name<<endl;
          cout<<"成绩: "<<rand()%100<<endl;
        }
      }
    }
  }
  void Show_Course(int id){
    for(int i=0;i<Sys_Course.size();i++){
      if(Sys_Course[i].c_id == id){
        cout<<"课程名称: "<<Sys_Course[i].c_name<<endl;
        cout<<"授课教师: "<<Sys_Course[i].c_teacher<<endl;
        cout<<"选修人数: "<<rand()%100<<endl;
      }
    }
  }
};
int main(){
  SelectSystem Sys;
  while(1){
    cout<<endl;
    cout<<"1.添加学生"<<endl;
    cout<<"2.添加课程"<<endl;
    cout<<"3.查询学生"<<endl;
    cout<<"4.查询课程"<<endl;
    cout<<"5.删除学生"<<endl;
    cout<<"6.删除课程"<<endl;
    cout<<"7.修改学生信息"<<endl;
    cout<<"8.修改课程信息"<<endl;
    cout<<"9.选课"<<endl;
    cout<<"10.查询学生选课"<<endl;
    cout<<"11.查询课程选修人数"<<endl;
    cout<<endl;
    int op;
    cin>>op;
    switch(op){
      case 1:
        Sys.add_Student();
        break;
      case 2:
        Sys.add_Course();
        break;
      case 3:{
        int id;
        cin>>id;
        Student stu = Sys.search_Stu(id);
        if(stu.s_id==0)
          cout<<"查无此人。"<<endl;
        
        else
          cout<<"学生姓名: "<<stu.s_name<<endl;
          cout<<"学生性别: "<<stu.s_gender<<endl;
        
        break;
      }
      case 4:{
        int id;
        cin>>id;
        Course cou = Sys.search_Cou(id);
        if(cou.c_id==0)
          cout<<"查无此课。"<<endl;
        
        else
          cout<<"课程名称: "<<cou.c_name<<endl;
          cout<<"授课教师: "<<cou.c_teacher<<endl;
        
        break;
      }
      case 5:{
        int id;
        cin>>id;
        Sys.del_Student(id);
        break;
      }
      case 6:{
        int id;
        cin>>id;
        Sys.del_Course(id);
        break;
      }
      case 7:{
        int id;
        cin>>id;
        Sys.Mod_Student(id);
        break;
      }
      case 8:{
        int id;
        cin>>id;
        Sys.Mod_Course(id);
        break;
      }
      case 9:{
        int sid, cid;
        cin>>sid>>cid;
        Sys.Select_Course(sid, cid);
        break;
      }
      case 10:{
        int id;
        cin>>id;
        Sys.Show_Student(id);
        break;
      }
      case 11:{
        int id;
        cin>>id;
        Sys.Show_Course(id);
        break;
      }
      default:
        cout<<"无效的操作。"<<endl;
        break;
    }
  }
  return 0;
}

以上就是一个基本的 C++ 学生选课系统代码的实现。通过学习和掌握这个代码,我们可以了解到 C++ 编程语言在学生信息管理和选课系统开发中的应用,同时也可以加深对 C++ 编程语言的理解和掌握。

  
  

评论区