C++核心编程——基于多态的企业职工系统
本专栏记录C++学习过程包括C++基础以及数据结构和算法,其中第一部分计划时间一个月,主要跟着黑马视频教程,学习路线如下,不定时更新,欢迎关注。
当前章节处于:
———第1阶段-C++基础入门
———第2阶段实战-通讯录管理系统,
———第3阶段-C++核心编程,
=====>第4阶段实战-基于多态的企业职工系统
———第5阶段-C++提高编程
———第6阶段实战-基于STL泛化编程的演讲比赛
———第7阶段-C++实战项目机房预约管理系统
文章目录
- 一、 项目介绍
- 二、需求分析
- 三、代码实现
-
- 3.1 抽象类
- 3.2 结构体
- 3.3 显示菜单
- 3.4 添加管理系统到文件
- 3.5 添加员工信息
- 3.6 显示系统
- 3.7 删除员工信息
- 3.8 修改员工信息
- 3.9 查找员工信息
- 3.10 按编号排序
- 3.11 清空管理系统
- 3.12 main主函数
- 四、完整代码
- 五、测试案例
一、 项目介绍
职工管理系统可以用来管理工资内所有员工的信息,要求利用C++来实现一个基于多态的职工管理系统。
公司中职工分为三类:普通职工、经理和老板,显示信息时需要显示职工编号、职工姓名、职工岗位以及职责。
- 普通员工职责:完成经理交给的任务
- 经理职责:完成老板交给的任务,并下发任务给员工
- 老板职责:管理公司所有事务
管理系统中需要实现的功能如下:
- 退出管理系统
- 增加职工信息:实现批量添加职工功能,将信息录入到文件中,职工信息为:职工编号、姓名、部门编号
- 显示职工信息:显示公司内部所有职工的信息
- 删除离职员工:按照编号删除指定的职工
- 修改职工信息:按照编号修改职工个人信息
- 查找职工信息:按照职工的编号或者职工的姓名进行查找相关的人员信息
- 按照编号排序:按照职工编号,进行排序,排序规则由用户指定
- 清空所有文档:清空文件中记录的所有职工信息(清除前需要再次确认,防止误删)
二、需求分析
整个管理系统可以看成一个类数组,类数组中需要定义一个员工数,方便后面进行逻辑上的清空。首先需要抽象一个职工类作为父类,然后普通员工,经理和老板继承员工类作为子类,父类中需要定义职工编号,职工姓名,职工岗位三个属性。退出管理系统,说明整个是在一个while循环里面,批量增加员工信息说明是在for循环里面,实例化对象添加到类数组里面,为保证职工编号唯一需要添加判断。并且需要将信息录入文件中,则需要涉及到文件流的操作,因为后续会反复更新文件,所以需要将文件更新封装成函数。显示员工信息时,遍历类数组,并且需要判断类成员的部门编号,打印对应职责。删除、修改和查找大同小异,遍历找到之后再做下一个操作,值得注意的是,删除需要将员工数-1。这四个操作在开始前都需要判断一下员工数,如果等于0的话说明管理系统为空,给出提示并返回。按照编号排序,无非升序和降序,这里给一个变量让用户选择即可,使用冒泡排序对实例化对象中的序号进行排序。清空文档将类数组中员工数置零即可,做逻辑上的清空。为保证友好的交互,还应设计一个选择菜单,在循环中反复调用。
三、代码实现
3.1 抽象类
// 职工类
class Staff {
public:
int numcard; // 职工编号
string name; // 职工姓名
string department; // 职工部门
string work; // 职责
};
// 员工类
class Employee:public Staff {
};
// 经理类
class Manager :public Staff {
};
// 老板类boss
class Boss :public Staff {
};
3.2 结构体
// 管理系统结构体
struct Managersystem {
Staff system[MaxNum];
int peoplenum;
};
3.3 显示菜单
// 显示菜单
void showMenu() {
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;
}
3.4 添加管理系统到文件
// 添加管理系统到文件
bool systemToFile(Managersystem& ms) {
// 管理系统到文件
fstream ofs;
ofs.open("System.txt", ios::out); // 如果不存在会先创建,先删除再创建
for (int i = 0; i < ms.peoplenum; i++) {
ofs << ms.system[i].numcard<<" " << ms.system[i].name << " " << ms.system[i].department << endl;
}
ofs.close();
return true;
}
3.5 添加员工信息
// 添加员工信息
bool addStaff(Managersystem &ms) {
// 达到最大值
if (ms.peoplenum == MaxNum) {
cout << "已达到系统所容纳最大人数,添加失败!" << endl;
return false; // 退出
}
// 批量添加
int allnum;
cout <> allnum;
bool foundDuplicate = false; // 标记
int count = 0; // 统计人数
for (int n = 0; n < allnum; n++) {
int dp; // 部门
string name; // 姓名
int num; // 职工编号
cout << "选择职位:" << endl;
cout << "1.员工" << endl;
cout << "2.经理" << endl;
cout << "3.老板" <> dp;
cout <> num;
// 保证编号的唯一性
for (int i = 0; i < ms.peoplenum; i++) {
if (num == ms.system[i].numcard) {
cout << "该职员编号已存在!" << endl;
foundDuplicate = true;
break;
}
}
if (foundDuplicate) {
foundDuplicate = false; // 重置标记
continue; // 跳过当前外部循环,继续执行下一次外部循环
}
cout <> name;
if (dp == 1) {
Employee ep;
ep.name = name;
ep.numcard = num;
ep.department = "员工";
ep.work = "完成经理交给的任务";
ms.system[ms.peoplenum] = ep;
}
else if (dp == 2) {
Manager mg;
mg.name = name;
mg.numcard = num;
mg.department = "经理";
mg.work = "完成老板交给的任务,并下发任务给员工";
ms.system[ms.peoplenum] = mg;
}
else {
Boss bs;
bs.name = name;
bs.numcard = num;
bs.department = "老板";
bs.work = "管理公司所有事务";
ms.system[ms.peoplenum] = bs;
}
count++;
ms.peoplenum++;
}
cout << "一共添加了" << count << "人!" << endl;
return true;
}
3.6 显示系统
// 显示系统
void showSystem(const Managersystem& ms) {
if (ms.peoplenum == 0) {
cout << "系统为空!" << endl;
return;
}
for (int i = 0; i < ms.peoplenum; i++) {
cout << "员工编号:" << ms.system[i].numcard<<" 部门:" << ms.system[i].department <<" 姓名:"<< ms.system[i].name <<" \t职责:"<< ms.system[i].work << endl;
}
}
3.7 删除员工信息
// 删除职工信息
bool deleteStaff(Managersystem& ms) {
if (ms.peoplenum == 0) {
cout << "系统为空!" << endl;
return false;
}
int numcard;
cout <> numcard;
for (int i = 0; i < ms.peoplenum; i++) {
if (ms.system[i].numcard == numcard) {
if (ms.peoplenum == 1) {
cout << "走这" << endl;
ms.peoplenum = 0; // 系统里面就一个人,直接做逻辑删除
}
else {
// 比如i=1,一共有4个,j需要从1开始到3
for (int j = i; j < ms.peoplenum; j++) {
ms.system[j] = ms.system[j + 1]; // 后面的移到前面
}
ms.peoplenum--;
}
return true;
}
}
cout << "没有你要删除的编号!" << endl;
return false;
}
3.8 修改员工信息
// 修改职工信息
bool changeStaff(Managersystem& ms) {
if (ms.peoplenum == 0) {
cout << "系统为空!" << endl;
return false;
}
int numcard;
cout <> numcard;
string target;
for (int i = 0; i < ms.peoplenum; i++) {
if (ms.system[i].numcard == numcard) {
cout <> target;
if (target.compare("编号") == 0) {
int targetnum;
cout <> targetnum;
ms.system[i].numcard = targetnum;
return true;
}
else if (target.compare("姓名") == 0) {
string targetname;
cout <> targetname;
ms.system[i].name = targetname;
return true;
}
else if (target.compare("部门") == 0) {
string targetdp;
cout <> targetdp;
ms.system[i].department = targetdp;
return true;
}
else {
cout << "没有这个选项!" << endl;
return false;
}
}
}
}
3.9 查找员工信息
// 查找职员信息
bool findStaff(Managersystem& ms) {
if (ms.peoplenum == 0) {
cout << "系统为空!" << endl;
return false;
}
int numcard;
cout <> numcard;
string target;
for (int i = 0; i < ms.peoplenum; i++) {
if (ms.system[i].numcard == numcard) {
cout << "员工编号:" << ms.system[i].numcard << " 部门:" << ms.system[i].department << " 姓名:" << ms.system[i].name << " 职责:" << ms.system[i].work << endl;
return true;
}
}
cout << "查无此人!" << endl;
return false;
}
3.10 按编号排序
// 按照编号排序
void popStaff(Managersystem& ms) {
int choice;
cout << "请输入排序方式:" << endl;
cout << "1.顺序" << endl;
cout << "2.逆序" <> choice;
if (ms.peoplenum == 0) {
cout << "系统为空!" << endl;
return;
}
if (choice == 1) {
for (int i = 0; i < ms.peoplenum - 1; i++) {
for (int j = 0; j < ms.peoplenum - i - 1; j++) {
// 冒泡排序
if (ms.system[j].numcard > ms.system[j + 1].numcard) {
// 交换
Staff temp = ms.system[j];
ms.system[j] = ms.system[j + 1];
ms.system[j + 1] = temp;
}
}
}
}
else {
for (int i = 0; i < ms.peoplenum - 1; i++) {
for (int j = 0; j < ms.peoplenum - i - 1; j++) {
// 冒泡排序
if (ms.system[j].numcard < ms.system[j + 1].numcard) {
// 交换
Staff temp = ms.system[j];
ms.system[j] = ms.system[j + 1];
ms.system[j + 1] = temp;
}
}
}
}
showSystem(ms);
}
3.11 清空管理系统
// 清空管理系统
bool deleteSystem(Managersystem& ms) {
// 做逻辑情况
int choice;
cout << "是否清空管理系统:" << endl;
cout << "1.Yes" << endl;
cout << "2.No" <> choice;
if (choice == 1) {
ms.peoplenum = 0; // 逻辑清空
return true;
}
return false;
}
3.12 main主函数
int main() {
// 创建一个管理系统结构体
Managersystem mainsystem;
mainsystem.peoplenum = 0; // 开始时置零
while (1) {
showMenu();
int choice;
cout <> choice;
switch (choice)
{
case 1:
addStaff(mainsystem);
systemToFile(mainsystem);
break;
case 2:
deleteStaff(mainsystem);
systemToFile(mainsystem);
break;
case 3:
changeStaff(mainsystem);
systemToFile(mainsystem);
break;
case 4:
findStaff(mainsystem);
break;
case 5:
showSystem(mainsystem);
break;
case 6:
popStaff(mainsystem);
systemToFile(mainsystem);
break;
case 7:
deleteSystem(mainsystem);
systemToFile(mainsystem);
break;
case 8:
return 0;
default:
cout << "没有这个选项!" << endl;
break;
}
}
system("pause");
return 0;
}
四、完整代码
#include
using namespace std;
#include
// 定义员工系统最大容纳人数
#define MaxNum 100
// 职工类
class Staff {
public:
int numcard; // 职工编号
string name; // 职工姓名
string department; // 职工部门
string work; // 职责
};
// 员工类
class Employee:public Staff {
};
// 经理类
class Manager :public Staff {
};
// 老板类boss
class Boss :public Staff {
};
// 管理系统结构体
struct Managersystem {
Staff system[MaxNum];
int peoplenum;
};
// 显示菜单
void showMenu() {
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;
}
// 添加管理系统到文件
bool systemToFile(Managersystem& ms) {
// 管理系统到文件
fstream ofs;
ofs.open("System.txt", ios::out); // 如果不存在会先创建,先删除再创建
for (int i = 0; i < ms.peoplenum; i++) {
ofs << ms.system[i].numcard<<" " << ms.system[i].name << " " << ms.system[i].department << endl;
}
ofs.close();
return true;
}
// 添加员工信息
bool addStaff(Managersystem &ms) {
// 达到最大值
if (ms.peoplenum == MaxNum) {
cout << "已达到系统所容纳最大人数,添加失败!" << endl;
return false; // 退出
}
// 批量添加
int allnum;
cout <> allnum;
bool foundDuplicate = false; // 标记
int count = 0; // 统计人数
for (int n = 0; n < allnum; n++) {
int dp; // 部门
string name; // 姓名
int num; // 职工编号
cout << "选择职位:" << endl;
cout << "1.员工" << endl;
cout << "2.经理" << endl;
cout << "3.老板" <> dp;
cout <> num;
// 保证编号的唯一性
for (int i = 0; i < ms.peoplenum; i++) {
if (num == ms.system[i].numcard) {
cout << "该职员编号已存在!" << endl;
foundDuplicate = true;
break;
}
}
if (foundDuplicate) {
foundDuplicate = false; // 重置标记
continue; // 跳过当前外部循环,继续执行下一次外部循环
}
cout <> name;
if (dp == 1) {
Employee ep;
ep.name = name;
ep.numcard = num;
ep.department = "员工";
ep.work = "完成经理交给的任务";
ms.system[ms.peoplenum] = ep;
}
else if (dp == 2) {
Manager mg;
mg.name = name;
mg.numcard = num;
mg.department = "经理";
mg.work = "完成老板交给的任务,并下发任务给员工";
ms.system[ms.peoplenum] = mg;
}
else {
Boss bs;
bs.name = name;
bs.numcard = num;
bs.department = "老板";
bs.work = "管理公司所有事务";
ms.system[ms.peoplenum] = bs;
}
count++;
ms.peoplenum++;
}
cout << "一共添加了" << count << "人!" << endl;
return true;
}
// 显示系统
void showSystem(const Managersystem& ms) {
if (ms.peoplenum == 0) {
cout << "系统为空!" << endl;
return;
}
for (int i = 0; i < ms.peoplenum; i++) {
cout << "员工编号:" << ms.system[i].numcard<<" 部门:" << ms.system[i].department <<" 姓名:"<< ms.system[i].name <<" \t职责:"<< ms.system[i].work << endl;
}
}
// 删除职工信息
bool deleteStaff(Managersystem& ms) {
if (ms.peoplenum == 0) {
cout << "系统为空!" << endl;
return false;
}
int numcard;
cout <> numcard;
for (int i = 0; i < ms.peoplenum; i++) {
if (ms.system[i].numcard == numcard) {
if (ms.peoplenum == 1) {
cout << "走这" << endl;
ms.peoplenum = 0; // 系统里面就一个人,直接做逻辑删除
}
else {
// 比如i=1,一共有4个,j需要从1开始到3
for (int j = i; j < ms.peoplenum; j++) {
ms.system[j] = ms.system[j + 1]; // 后面的移到前面
}
ms.peoplenum--;
}
return true;
}
}
cout << "没有你要删除的编号!" << endl;
return false;
}
// 修改职工信息
bool changeStaff(Managersystem& ms) {
if (ms.peoplenum == 0) {
cout << "系统为空!" << endl;
return false;
}
int numcard;
cout <> numcard;
string target;
for (int i = 0; i < ms.peoplenum; i++) {
if (ms.system[i].numcard == numcard) {
cout <> target;
if (target.compare("编号") == 0) {
int targetnum;
cout <> targetnum;
ms.system[i].numcard = targetnum;
return true;
}
else if (target.compare("姓名") == 0) {
string targetname;
cout <> targetname;
ms.system[i].name = targetname;
return true;
}
else if (target.compare("部门") == 0) {
string targetdp;
cout <> targetdp;
ms.system[i].department = targetdp;
return true;
}
else {
cout << "没有这个选项!" << endl;
return false;
}
}
}
}
// 查找职员信息
bool findStaff(Managersystem& ms) {
if (ms.peoplenum == 0) {
cout << "系统为空!" << endl;
return false;
}
int numcard;
cout <> numcard;
string target;
for (int i = 0; i < ms.peoplenum; i++) {
if (ms.system[i].numcard == numcard) {
cout << "员工编号:" << ms.system[i].numcard << " 部门:" << ms.system[i].department << " 姓名:" << ms.system[i].name << " 职责:" << ms.system[i].work << endl;
return true;
}
}
cout << "查无此人!" << endl;
return false;
}
// 按照编号排序
void popStaff(Managersystem& ms) {
int choice;
cout << "请输入排序方式:" << endl;
cout << "1.顺序" << endl;
cout << "2.逆序" <> choice;
if (ms.peoplenum == 0) {
cout << "系统为空!" << endl;
return;
}
if (choice == 1) {
for (int i = 0; i < ms.peoplenum - 1; i++) {
for (int j = 0; j < ms.peoplenum - i - 1; j++) {
// 冒泡排序
if (ms.system[j].numcard > ms.system[j + 1].numcard) {
// 交换
Staff temp = ms.system[j];
ms.system[j] = ms.system[j + 1];
ms.system[j + 1] = temp;
}
}
}
}
else {
for (int i = 0; i < ms.peoplenum - 1; i++) {
for (int j = 0; j < ms.peoplenum - i - 1; j++) {
// 冒泡排序
if (ms.system[j].numcard < ms.system[j + 1].numcard) {
// 交换
Staff temp = ms.system[j];
ms.system[j] = ms.system[j + 1];
ms.system[j + 1] = temp;
}
}
}
}
showSystem(ms);
}
// 清空管理系统
bool deleteSystem(Managersystem& ms) {
// 做逻辑情况
int choice;
cout << "是否清空管理系统:" << endl;
cout << "1.Yes" << endl;
cout << "2.No" <> choice;
if (choice == 1) {
ms.peoplenum = 0; // 逻辑清空
return true;
}
return false;
}
int main() {
// 创建一个管理系统结构体
Managersystem mainsystem;
mainsystem.peoplenum = 0; // 开始时置零
while (1) {
showMenu();
int choice;
cout <> choice;
switch (choice)
{
case 1:
addStaff(mainsystem);
systemToFile(mainsystem);
break;
case 2:
deleteStaff(mainsystem);
systemToFile(mainsystem);
break;
case 3:
changeStaff(mainsystem);
systemToFile(mainsystem);
break;
case 4:
findStaff(mainsystem);
break;
case 5:
showSystem(mainsystem);
break;
case 6:
popStaff(mainsystem);
systemToFile(mainsystem);
break;
case 7:
deleteSystem(mainsystem);
systemToFile(mainsystem);
break;
case 8:
return 0;
default:
cout << "没有这个选项!" << endl;
break;
}
}
system("pause");
return 0;
}
五、测试案例
-----欢迎来到职工管理系统----
1.增加职工信息
2.删除职工信息
3.修改职工信息
4.查找职工信息
5.显示职工信息
6.按照编号排序
7.清空管理系统
8.退出管理系统
请输入你的选项:1
请输入你要添加的人数:3
选择职位:
1.员工
2.经理
3.老板
1
请输入职工编号:1
请输入姓名:张三
选择职位:
1.员工
2.经理
3.老板
2
请输入职工编号:2
请输入姓名:李四
选择职位:
1.员工
2.经理
3.老板
3
请输入职工编号:3
请输入姓名:王五
一共添加了3人!
-----欢迎来到职工管理系统----
1.增加职工信息
2.删除职工信息
3.修改职工信息
4.查找职工信息
5.显示职工信息
6.按照编号排序
7.清空管理系统
8.退出管理系统
请输入你的选项:5
员工编号:1 部门:员工 姓名:张三 职责:完成经理交给的任务
员工编号:2 部门:经理 姓名:李四 职责:完成老板交给的任务,并下发任务给员工
员工编号:3 部门:老板 姓名:王五 职责:管理公司所有事务
-----欢迎来到职工管理系统----
1.增加职工信息
2.删除职工信息
3.修改职工信息
4.查找职工信息
5.显示职工信息
6.按照编号排序
7.清空管理系统
8.退出管理系统
请输入你的选项:2
请输入你要删除的职工编号:2
-----欢迎来到职工管理系统----
1.增加职工信息
2.删除职工信息
3.修改职工信息
4.查找职工信息
5.显示职工信息
6.按照编号排序
7.清空管理系统
8.退出管理系统
请输入你的选项:5
员工编号:1 部门:员工 姓名:张三 职责:完成经理交给的任务
员工编号:3 部门:老板 姓名:王五 职责:管理公司所有事务
-----欢迎来到职工管理系统----
1.增加职工信息
2.删除职工信息
3.修改职工信息
4.查找职工信息
5.显示职工信息
6.按照编号排序
7.清空管理系统
8.退出管理系统
请输入你的选项:3
请输入你要修改的职工编号:1
请输入你要修改的信息:部门
请输入修改之后的部门:经理
-----欢迎来到职工管理系统----
1.增加职工信息
2.删除职工信息
3.修改职工信息
4.查找职工信息
5.显示职工信息
6.按照编号排序
7.清空管理系统
8.退出管理系统
请输入你的选项:5
员工编号:1 部门:经理 姓名:张三 职责:完成经理交给的任务
员工编号:3 部门:老板 姓名:王五 职责:管理公司所有事务
-----欢迎来到职工管理系统----
1.增加职工信息
2.删除职工信息
3.修改职工信息
4.查找职工信息
5.显示职工信息
6.按照编号排序
7.清空管理系统
8.退出管理系统
请输入你的选项:4
请输入你要查找的职工编号:1
员工编号:1 部门:经理 姓名:张三 职责:完成经理交给的任务
-----欢迎来到职工管理系统----
1.增加职工信息
2.删除职工信息
3.修改职工信息
4.查找职工信息
5.显示职工信息
6.按照编号排序
7.清空管理系统
8.退出管理系统
请输入你的选项:4
请输入你要查找的职工编号:2
查无此人!
-----欢迎来到职工管理系统----
1.增加职工信息
2.删除职工信息
3.修改职工信息
4.查找职工信息
5.显示职工信息
6.按照编号排序
7.清空管理系统
8.退出管理系统
请输入你的选项:1
请输入你要添加的人数:1
选择职位:
1.员工
2.经理
3.老板
1
请输入职工编号:2
请输入姓名:赵六
一共添加了1人!
-----欢迎来到职工管理系统----
1.增加职工信息
2.删除职工信息
3.修改职工信息
4.查找职工信息
5.显示职工信息
6.按照编号排序
7.清空管理系统
8.退出管理系统
请输入你的选项:1
请输入你要添加的人数:1
选择职位:
1.员工
2.经理
3.老板
1
请输入职工编号:1
该职员编号已存在!
一共添加了0人!
-----欢迎来到职工管理系统----
1.增加职工信息
2.删除职工信息
3.修改职工信息
4.查找职工信息
5.显示职工信息
6.按照编号排序
7.清空管理系统
8.退出管理系统
请输入你的选项:5
员工编号:1 部门:经理 姓名:张三 职责:完成经理交给的任务
员工编号:3 部门:老板 姓名:王五 职责:管理公司所有事务
员工编号:2 部门:员工 姓名:赵六 职责:完成经理交给的任务
-----欢迎来到职工管理系统----
1.增加职工信息
2.删除职工信息
3.修改职工信息
4.查找职工信息
5.显示职工信息
6.按照编号排序
7.清空管理系统
8.退出管理系统
请输入你的选项:6
请输入排序方式:
1.顺序
2.逆序
1
员工编号:1 部门:经理 姓名:张三 职责:完成经理交给的任务
员工编号:2 部门:员工 姓名:赵六 职责:完成经理交给的任务
员工编号:3 部门:老板 姓名:王五 职责:管理公司所有事务
-----欢迎来到职工管理系统----
1.增加职工信息
2.删除职工信息
3.修改职工信息
4.查找职工信息
5.显示职工信息
6.按照编号排序
7.清空管理系统
8.退出管理系统
请输入你的选项:6
请输入排序方式:
1.顺序
2.逆序
2
员工编号:3 部门:老板 姓名:王五 职责:管理公司所有事务
员工编号:2 部门:员工 姓名:赵六 职责:完成经理交给的任务
员工编号:1 部门:经理 姓名:张三 职责:完成经理交给的任务
-----欢迎来到职工管理系统----
1.增加职工信息
2.删除职工信息
3.修改职工信息
4.查找职工信息
5.显示职工信息
6.按照编号排序
7.清空管理系统
8.退出管理系统
请输入你的选项:7
是否清空管理系统:
1.Yes
2.No
1
-----欢迎来到职工管理系统----
1.增加职工信息
2.删除职工信息
3.修改职工信息
4.查找职工信息
5.显示职工信息
6.按照编号排序
7.清空管理系统
8.退出管理系统
请输入你的选项:8
D:\桌面\C++学习\1.14\x64\Debug\1.14.exe (进程 5464)已退出,代码为 0。
要在调试停止时自动关闭控制台,请启用“工具”->“选项”->“调试”->“调试停止时自动关闭控制台”。
按任意键关闭此窗口. . .
本文来自网络,不代表协通编程立场,如若转载,请注明出处:https://net2asp.com/90873c1edb.html
