21xrx.com
2024-11-05 17:31:46 Tuesday
登录
文章检索 我的文章 写文章
C++学生信息管理系统完整代码
2023-07-10 16:05:59 深夜i     --     --
C++编程语言 学生信息管理系统 完整代码 数据库管理 界面设计

C++学生信息管理系统是计算机科学专业的一部分,学生们必须理解和掌握的内容。这是一种功能强大的编程语言,具有许多功能和应用,可以帮助学生方便地管理学生信息。下面是C++学生信息管理系统的完整代码和说明。

首先,要建立一个类,来存储学生的信息,包括学生的ID、姓名、性别和年龄。下面是类的定义:


class Student

{

  int ID;

  string name;

  char gender;

  int age;

public:

  void setID(int i) ID = i;

  void setName(string n) name = n;

  void setGender(char g) gender = g;

  void setAge(int a) age = a;

  int getID() return ID;

  string getName() return name;

  char getGender() return gender;

  int getAge() return age;   

};

接下来,要创建一个数组来存储所有学生的信息,包括学生的ID、姓名、性别和年龄。这里使用一个动态数组来存储所有的学生信息,而且可以自定义数组的大小。下面是数组的定义:


int main()

{

  int num = 0;

  cout << "Enter the number of students: ";

  cin >> num;

  Student* stu = new Student[num];

  for (int i = 0; i < num; i++)

  {

    int ID, age;

    string name;

    char gender;

    cout << endl << "Enter student ID: ";

    cin >> ID;

    cout << "Enter student name: ";

    cin >> name;

    cout << "Enter student gender(M/F): ";

    cin >> gender;

    cout << "Enter student age: ";

    cin >> age;

    stu[i].setID(ID);

    stu[i].setName(name);

    stu[i].setGender(gender);

    stu[i].setAge(age);

  }

现在可以开始管理学生信息了。可以通过学号查找学生,或者按照姓名、性别和年龄等子项进行排序。下面是实现这些功能的代码:


// Search student by ID

void searchByID(Student* stu, int num)

{

  int ID = 0;

  cout << endl << "Enter student ID to search: ";

  cin >> ID;

  bool found = false;

  for (int i = 0; i < num; i++)

  {

    if (stu[i].getID() == ID)

    {

      found = true;

      cout << endl << "Student found!" << endl;

      cout << "ID: " << stu[i].getID() << endl;

      cout << "Name: " << stu[i].getName() << endl;

      cout << "Gender: " << stu[i].getGender() << endl;

      cout << "Age: " << stu[i].getAge() << endl;

      break;

    }

  }

  if (!found)

  

    cout << endl << "Student not found!" << endl;

  

}

// Sort students by name

void sortByName(Student* stu, int num)

{

  for (int i = 0; i < num; i++)

  {

    for (int j = i + 1; j < num; j++)

    {

      if (stu[i].getName() > stu[j].getName())

      {

        Student temp = stu[i];

        stu[i] = stu[j];

        stu[j] = temp;

      }

    }

  }

  cout << endl << "Students sorted by name!" << endl;

}

// Sort students by gender

void sortByGender(Student* stu, int num)

{

  for (int i = 0; i < num; i++)

  {

    for (int j = i + 1; j < num; j++)

    {

      if (stu[i].getGender() > stu[j].getGender())

      {

        Student temp = stu[i];

        stu[i] = stu[j];

        stu[j] = temp;

      }

    }

  }

  cout << endl << "Students sorted by gender!" << endl;

}

// Sort students by age

void sortByAge(Student* stu, int num)

{

  for (int i = 0; i < num; i++)

  {

    for (int j = i + 1; j < num; j++)

    {

      if (stu[i].getAge() > stu[j].getAge())

      {

        Student temp = stu[i];

        stu[i] = stu[j];

        stu[j] = temp;

      }

    }

  }

  cout << endl << "Students sorted by age!" << endl;

}

// Display all students

void displayAll(Student* stu, int num)

{

  for (int i = 0; i < num; i++)

  {

    cout << endl << "Student " << i + 1 << ":" << endl;

    cout << "ID: " << stu[i].getID() << endl;

    cout << "Name: " << stu[i].getName() << endl;

    cout << "Gender: " << stu[i].getGender() << endl;

    cout << "Age: " << stu[i].getAge() << endl;

  }

}

最后,还要编写一个函数来释放数组占用的内存:


// Memory release

void release(Student* stu)

{

  delete[] stu;

}

有了上面的这些代码,就可以轻松地管理学生信息了。这个C++学生信息管理系统可以方便地查找学生信息、排序和显示所有学生信息,而且可以自定义学生人数。如果想要更多功能,可以根据上面的代码进行拓展。

  
  

评论区

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