21xrx.com
2024-12-22 21:40:57 Sunday
登录
文章检索 我的文章 写文章
C++编写学生信息管理系统代码
2023-07-12 00:12:00 深夜i     --     --
C++ 学生信息管理系统 编写 代码 管理

C++是一门面向对象的高级编程语言,它具有优秀的可移植性和丰富的语言特性。在学校的教学中,C++已经成为一门必修课程,所以本文将为大家介绍如何使用C++来编写一个学生信息管理系统。

一、 需求分析

首先,我们来分析一下学生信息管理系统的需求,其主要功能包括:

1、录入学生信息,包括学号、姓名、性别、年龄、成绩等;

2、修改学生信息,可以修改指定学生的信息;

3、查询学生信息,可以按照学号查询学生信息;

4、删除学生信息,可以删除指定学生的信息。

二、 设计程序结构

针对以上需求,我们可以设计出以下程序结构:

1、定义学生结构体,包含学号、姓名、性别、年龄、成绩等属性;

2、定义函数进行添加、修改、查询和删除学生信息;

3、定义函数进行学生信息的输入、输出;

4、定义函数进行菜单的显示和选择等。

三、 实现代码

下面是代码实现过程,代码具有一定的可读性和注释:

#include

#include

using namespace std;

struct Student

  string name; // 姓名

  int age; // 年龄

  string sex; // 性别

  int num; // 学号

  float score; // 成绩

;

void AddStudent(Student* students,int& num); // 添加学生信息

void ModifyStudent(Student* students,int num); // 修改学生信息

void DeleteStudent(Student* students,int& num); // 删除学生信息

void QueryStudent(Student* students,int num); // 查找学生信息

void ShowMenu(); // 显示菜单

int main()

{

  Student students[10]; // 存储学生信息,最多存储10个学生

  int num = 0; // 学生数目

  int choice = 0; // 菜单选项

  while (true)

  {

    ShowMenu(); // 显示菜单

    cin >> choice; // 输入选项

    if (choice == 1)

      AddStudent(students,num); // 添加学生信息

    else if (choice == 2)

      ModifyStudent(students,num); // 修改学生信息

    else if (choice == 3)

      DeleteStudent(students,num); // 删除学生信息

    else if (choice == 4)

      QueryStudent(students,num); // 查找学生信息

    else if (choice == 5)

      break; // 退出

    else

      cout << "输入错误,请重新输入!" << endl;

  }

  return 0;

}

// 添加学生信息

void AddStudent(Student* students,int& num)

{

  if (num >= 10)

    cout << "学生信息已满

  Student student;

  cout << "请输入学生姓名:" << endl;

  cin >> student.name;

  cout << "请输入学生年龄:" << endl;

  cin >> student.age;

  cout << "请输入学生性别:" << endl;

  cin >> student.sex;

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

  cin >> student.num;

  cout << "请输入学生成绩:" << endl;

  cin >> student.score;

  students[num++] = student;

  cout << "添加成功!" << endl;

  return;

}

// 修改学生信息

void ModifyStudent(Student* students,int num)

{

  if (num == 0)

    cout << "暂无学生信息

  int num_modify;

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

  cin >> num_modify;

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

  {

    if (students[i].num == num_modify)

    {

      cout << "学生信息:姓名-" << students[i].name << " 年龄-" << students[i].age << " 性别-" << students[i].sex << " 学号-" << students[i].num << " 成绩-" << students[i].score << endl;

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

      cout << "请输入学生姓名:" << endl;

      cin >> students[i].name;

      cout << "请输入学生年龄:" << endl;

      cin >> students[i].age;

      cout << "请输入学生性别:" << endl;

      cin >> students[i].sex;

      cout << "请输入学生成绩:" << endl;

      cin >> students[i].score;

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

      return;

    }

  }

  cout << "查无此人,修改失败!" << endl;

  return;

}

// 删除学生信息

void DeleteStudent(Student* students,int& num)

{

  if (num == 0)

  无法删除!" << endl;

    return;

  int num_del;

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

  cin >> num_del;

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

  {

    if (students[i].num == num_del)

    {

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

        students[j] = students[j + 1];

      num--;

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

      return;

    }

  }

  cout << "查无此人,删除失败!" << endl;

  return;

}

// 查找学生信息

void QueryStudent(Student* students,int num)

{

  if (num == 0)

    cout << "暂无学生信息

  int num_query;

  cout << "请输入要查找的学生学号:" << endl;

  cin >> num_query;

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

  {

    if (students[i].num == num_query)

    {

      cout << "学生信息:姓名-" << students[i].name << " 年龄-" << students[i].age << " 性别-" << students[i].sex << " 学号-" << students[i].num << " 成绩-" << students[i].score << endl;

      return;

    }

  }

  cout << "查无此人,查找失败!" << endl;

  return;

}

// 显示菜单

void ShowMenu()

{

  cout << "*************************************" << endl;

  cout << "*     学生信息管理系统     *" << endl;

  cout << "*************************************" << endl;

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

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

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

  cout << "4. 查找学生信息" << endl;

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

  cout << "请选择操作:";

}

代码实现中,首先定义了一个学生结构体,包含学号、姓名、性别、年龄、成绩等属性。接着,定义了函数实现添加、修改、查询、删除和菜单显示等功能。在主函数中,使用while循环不断等待用户选择菜单项,根据用户的选择实现不同的功能。

四、 测试运行

下面,我们就可以运行该学生信息管理系统测试,具体实现如下:

从1到5依次选择菜单项,输入相应信息并进行测试。

添加学生信息:

输入学生的姓名、年龄、性别、学号和成绩,输出添加成功。

修改学生信息:

输入学生学号,检索学生的信息,输入修改后的信息并输出修改成功。

删除学生信息:

输入学生学号,检索学生的信息,删除该学生信息并输出删除成功。

查找学生信息:

输入学生学号,查找该学生信息并输出。

五、 总结

通过以上实现,我们可以看出使用C++编写学生信息管理系统并不难,有了良好的编程思路和算法能力,相信大家都能轻松实现并且通过代码实现不断提高自己的编程能力。

  
  

评论区

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