C++实现教师管理系统

C++实现教师管理系统攻略

1、设计系统结构

在实现教师管理系统前,我们需要先设计系统的结构。

在本系统中,我们需要完成以下功能:

  1. 添加教师信息
  2. 删除教师信息
  3. 修改教师信息
  4. 查询教师信息
  5. 显示所有教师信息

综上所述,我们可以设计出如下的系统结构:

struct Teacher
{
    int id;            //教师编号
    string name;       //教师姓名
    int age;           //教师年龄
    string department; //教师所在学院
};

void AddTeacher();     //添加教师信息
void DeleteTeacher();  //删除教师信息
void ModifyTeacher();  //修改教师信息
void QueryTeacher();   //查询教师信息
void ShowAllTeacher(); //显示所有教师信息

2、编写具体操作函数

接下来,我们就可以编写各个具体操作函数了。

2.1 添加教师信息函数

void AddTeacher()
{
    Teacher newTeacher;
    cout << "请输入教师编号:";
    cin >> newTeacher.id;
    cout << "请输入教师姓名:";
    cin >> newTeacher.name;
    cout << "请输入教师年龄:";
    cin >> newTeacher.age;
    cout << "请输入教师所在学院:";
    cin >> newTeacher.department;
    //将新教师信息加入教师信息列表中
    teacherList.push_back(newTeacher);
    cout << "添加教师信息成功!" << endl;
}

2.2 删除教师信息函数

void DeleteTeacher()
{
    int deleteID;
    cout << "请输入要删除的教师编号:";
    cin >> deleteID;
    //使用迭代器查找指定编号的教师信息并删除
    for (list<Teacher>::iterator it = teacherList.begin(); it != teacherList.end(); it++)
    {
        if (it->id == deleteID)
        {
            teacherList.erase(it);
            cout << "删除教师信息成功!" << endl;
            return;
        }
    }
    cout << "未找到要删除的教师信息!" << endl;
}

2.3 修改教师信息函数

void ModifyTeacher()
{
    int modifyID;
    cout << "请输入要修改的教师编号:";
    cin >> modifyID;
    //使用迭代器查找指定编号的教师信息并修改
    for (list<Teacher>::iterator it = teacherList.begin(); it != teacherList.end(); it++)
    {
        if (it->id == modifyID)
        {
            cout << "请输入教师姓名:";
            cin >> it->name;
            cout << "请输入教师年龄:";
            cin >> it->age;
            cout << "请输入教师所在学院:";
            cin >> it->department;
            cout << "修改教师信息成功!" << endl;
            return;
        }
    }
    cout << "未找到要修改的教师信息!" << endl;
}

2.4 查询教师信息函数

void QueryTeacher()
{
    int queryID;
    cout << "请输入要查询的教师编号:";
    cin >> queryID;
    //使用迭代器查找指定编号的教师信息并展示
    for (list<Teacher>::iterator it = teacherList.begin(); it != teacherList.end(); it++)
    {
        if (it->id == queryID)
        {
            cout << "教师编号:" << it->id << endl;
            cout << "教师姓名:" << it->name << endl;
            cout << "教师年龄:" << it->age << endl;
            cout << "教师所在学院:" << it->department << endl;
            cout << "查询教师信息成功!" << endl;
            return;
        }
    }
    cout << "未找到要查询的教师信息!" << endl;
}

2.5 显示所有教师信息函数

void ShowAllTeacher()
{
    for (list<Teacher>::iterator it = teacherList.begin(); it != teacherList.end(); it++)
    {
        cout << "教师编号:" << it->id << endl;
        cout << "教师姓名:" << it->name << endl;
        cout << "教师年龄:" << it->age << endl;
        cout << "教师所在学院:" << it->department << endl;
        cout << endl;
    }
    cout << "共查询到 " << teacherList.size() << " 条教师信息!" << endl;
}

3、示例说明

示例1:添加教师信息

请输入教师编号:1
请输入教师姓名:Tom
请输入教师年龄:30
请输入教师所在学院:Computer Science
添加教师信息成功!

示例2:查询教师信息

请输入要查询的教师编号:1
教师编号:1
教师姓名:Tom
教师年龄:30
教师所在学院:Computer Science
查询教师信息成功!

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C++实现教师管理系统 - Python技术站

(0)
上一篇 2023年5月23日
下一篇 2023年5月23日

相关文章

  • json的定义、标准格式及json字符串检验

    JSON是JavaScript对象表示法(JavaScript Object Notation)的缩写,是一种轻量级的数据交换格式。 JSON的定义 JSON是一种用于数据交换的文本格式,和XML一样,JSON也是一种纯文本格式,可以轻松地在网络中传递。JSON使用JavaScript语法来描述数据,但是JSON仅仅是一种数据格式,不是一种编程语言,所以它是…

    C 2023年5月23日
    00
  • C++ 中类对象类型的转化的实例详解

    C++ 中类对象类型的转化的实例详解 什么是类型转换? 类型转换是将数据从一种数据类型转换为另一种数据类型的过程。在 C++ 中,有几种类型转换的方式: 隐式类型转换:在表达式中,某些情况下,C++ 会自动将一种类型转换为另一种类型。例如,int x = 10; float y = x; 在将 int 类型赋值给 float 类型时,C++ 会自动完成数据类…

    C 2023年5月22日
    00
  • i9-10920Xc处理器怎么样 i9-10920Xc参数跑分性能评测

    i9-10920Xc处理器简介 i9-10920Xc是英特尔基于其Skylake-X微架构推出的一款高档桌面级处理器,主要面向需要高性能计算的用户,如游戏玩家、影音剪辑者、3D建模者等。i9-10920Xc处理器采用14nm工艺,拥有12个物理核心和24个线程,最高主频可达4.8 GHz。它的主要竞争对手是AMD Ryzen Threadripper 292…

    C 2023年5月23日
    00
  • Python中Random和Math模块学习笔记

    当谈到随机数生成,Python自带的random模块和math模块是帮助我们处理这些任务的重要组件。这两个库都允许我们使用Python进行随机数生成操作,它们之间也存在着一些区别,下面我来详细讲解一下这两个模块的使用。 Random模块 Random模块是Python自带的标准库之一,可以用于生成随机数和从序列中作出随机选择。下面是一个简单的示例,展示了如何…

    C 2023年5月22日
    00
  • C语言图书管理系统课程设计

    C语言图书管理系统课程设计攻略 1. 需求分析 首先,需要进行需求分析,确定图书管理系统需要实现哪些功能,这些功能包括但不限于: 图书的添加、删除、修改、查询等操作 用户的注册、登录、注销等操作 借阅、归还等操作 统计功能、报表生成等操作 2. 设计数据库 接下来,需要设计系统所使用的数据库,可以使用MySQL、SQLite等关系型数据库管理系统。可以创建如…

    C 2023年5月23日
    00
  • JSON字符串和JSON对象相互转化实例详解

    下面是关于“JSON字符串和JSON对象相互转化实例详解”的攻略: 1. 什么是JSON? JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于JavaScript语言的语法,但独立于编程语言和硬件平台。在Web应用程序中,它通常用于从Web服务器向Web浏览器传输数据。 2. JSON对象和JSON字符串的…

    C 2023年5月23日
    00
  • ubuntu10.04配置 nginx+php-fpm模式的详解

    Ubuntu10.04配置nginx+php-fpm模式的详解 Ubuntu10.04中可以使用如下方式配置nginx+php-fpm模式。下面将详细讲解具体步骤。 安装nginx 首先需要安装nginx。在终端中执行如下命令: sudo apt-get update sudo apt-get install nginx 安装后,使用如下命令启动nginx:…

    C 2023年5月22日
    00
  • PHP JSON格式的中文显示问题解决方法

    PHP 中 JSON 格式对于中文字符的处理方式存在一些问题,下面提供一种解决方法。 问题分析 在使用 PHP 中的 json_encode 函数将一个数组或对象转换为 JSON 字符串时,如果数组或对象中含有中文字符,那么生成的 JSON 字符串中这些中文字符会被转义成 Unicode 编码形式。 例如,以下数组: $data = [ "name…

    C 2023年5月23日
    00
合作推广
合作推广
分享本页
返回顶部