21xrx.com
2024-11-22 13:47:52 Friday
登录
文章检索 我的文章 写文章
C++ 学生选课系统代码
2023-06-23 10:32:07 深夜i     --     --
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++ 编程语言的理解和掌握。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复