21xrx.com
2024-06-03 04:01:52 Monday
登录
文章检索 我的文章 写文章
C++学生信息管理系统完整代码
2023-07-04 22:28:16 深夜i     --     --
C++ 学生信息 管理系统 完整代码

C++学生信息管理系统是一款用于管理学生信息的应用程序,它具有简单易用、功能齐全等特点,能够有效地帮助管理人员对学生信息进行收集、查询、修改、删除等操作。下面是该系统的完整代码及相关说明。

一、需求分析

为了更好地完成开发任务,我们首先需要对该系统的需求进行分析,包括以下内容:

1. 学生基本信息:包括姓名、学号、性别、年龄和联系电话等。

2. 学生成绩信息:包括数学、语文、英语、物理和化学成绩等。

3. 系统功能:包括添加学生信息、查询学生信息、修改学生信息和删除学生信息等。

二、代码实现

该系统使用C++编写,主要分为头文件、源文件和主函数三个部分。以下是完整代码及相关说明。

头文件部分:student.h


#pragma once

#include <iostream>

#include <string>

using namespace std;

class student {

  public:

    string name, stu_id, gender, phone;

    int age, math_score, chinese_score, english_score, physics_score, chemistry_score;

    student();

    void display();

    void modify();

};

说明:头文件包括类的定义和相关函数声明。该类包括学生基本信息和成绩信息等属性,以及相关的构造函数、显示函数和修改函数等。

源文件部分:student.cpp


#include "student.h"

student::student()

  name = stu_id = gender = phone = "";

  age = math_score = chinese_score = english_score = physics_score = chemistry_score = 0;

void student::display()

  cout << "学号:" << stu_id << endl;

  cout << "姓名:" << name << endl;

  cout << "性别:" << gender << endl;

  cout << "年龄:" << age << endl;

  cout << "电话:" << phone << endl;

  cout << "数学:" << math_score << endl;

  cout << "语文:" << chinese_score << endl;

  cout << "英语:" << english_score << endl;

  cout << "物理:" << physics_score << endl;

  cout << "化学:" << chemistry_score << endl;

void student::modify()

  cout << "请输入修改的信息:" << endl;

  cout << "学号:" << stu_id << endl;

  cin >> stu_id;

  cout << "姓名:" << name << endl;

  cin >> name;

  cout << "性别:" << gender << endl;

  cin >> gender;

  cout << "年龄:" << age << endl;

  cin >> age;

  cout << "电话:" << phone << endl;

  cin >> phone;

  cout << "数学:" << math_score << endl;

  cin >> math_score;

  cout << "语文:" << chinese_score << endl;

  cin >> chinese_score;

  cout << "英语:" << english_score << endl;

  cin >> english_score;

  cout << "物理:" << physics_score << endl;

  cin >> physics_score;

  cout << "化学:" << chemistry_score << endl;

  cin >> chemistry_score;

说明:源文件中包括类中相关函数的实现代码,如构造函数的定义、显示函数的输出和修改函数的输入。

主函数部分:main.cpp


#include "student.h"

#include <vector>

void add(vector<student>& vec) {

  student st;

  cout << "请输入学生信息:" << endl;

  cout << "学号:" << endl;

  cin >> st.stu_id;

  cout << "姓名:" << endl;

  cin >> st.name;

  cout << "性别:" << endl;

  cin >> st.gender;

  cout << "年龄:" << endl;

  cin >> st.age;

  cout << "电话:" << endl;

  cin >> st.phone;

  cout << "数学:" << endl;

  cin >> st.math_score;

  cout << "语文:" << endl;

  cin >> st.chinese_score;

  cout << "英语:" << endl;

  cin >> st.english_score;

  cout << "物理:" << endl;

  cin >> st.physics_score;

  cout << "化学:" << endl;

  cin >> st.chemistry_score;

  vec.push_back(st);

}

void query(const vector<student>& vec) {

  string id;

  cout << "请输入学生学号:" << endl;

  cin >> id;

  bool flag = false;

  for (auto& st : vec) {

    if (st.stu_id == id) {

      st.display();

      flag = true;

      break;

    }

  }

  if (!flag)

    cout << "未找到该学生信息!" << endl;

  

}

void modify(vector<student>& vec) {

  string id;

  cout << "请输入需要修改的学生学号:" << endl;

  cin >> id;

  bool flag = false;

  for (auto& st : vec) {

    if (st.stu_id == id) {

      st.modify();

      flag = true;

      cout << "修改成功!" << endl;

      break;

    }

  }

  if (!flag)

    cout << "未找到该学生信息!" << endl;

  

}

void delete_stu(vector<student>& vec) {

  string id;

  cout << "请输入需要删除的学生学号:" << endl;

  cin >> id;

  bool flag = false;

  for (auto iter = vec.begin(); iter != vec.end(); iter++) {

    if ((*iter).stu_id == id) {

      vec.erase(iter);

      flag = true;

      cout << "删除成功!" << endl;

      break;

    }

  }

  if (!flag)

    cout << "未找到该学生信息!" << endl;

  

}

int main() {

  vector<student> vec;

  while (true) {

    cout << "====================================" << endl;

    cout << "1.添加学生信息" << endl;

    cout << "2.查询学生信息" << endl;

    cout << "3.修改学生信息" << endl;

    cout << "4.删除学生信息" << endl;

    cout << "5.退出系统" << endl;

    cout << "====================================" << endl;

    int choice;

    cin >> choice;

    switch (choice) {

      case 1:

        add(vec);

        break;

      case 2:

        query(vec);

        break;

      case 3:

        modify(vec);

        break;

      case 4:

        delete_stu(vec);

        break;

      case 5:

        cout << "谢谢使用!" << endl;

        exit(0);

        break;

      default:

        cout << "输入无效,请重新输入:" << endl;

        break;

    }

  }

  return 0;

}

说明:主函数根据用户输入的不同选项,调用相关函数实现添加、查询、修改和删除学生信息等功能,同时使用while循环来保持程序的持续运行状态,直至用户选择退出系统。

三、总结

通过以上代码实现,我们成功开发了一款基于C++的学生信息管理系统,能够实现对学生信息的管理和处理等常见需求。在后续开发和维护过程中,我们可以进一步完善相关功能和界面,提高系统的易用性和稳定性,以满足不同用户的需求。

  
  

评论区

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