根据给定的文件信息,我们可以总结出以下关于“职工管理系统”的关键知识点,主要涉及C++编程语言的应用: ### 1. 数据结构与类定义 在职工管理系统的代码中,使用了`struct`和`class`两种数据结构。`struct people`用于定义职工的基本属性,包括: - `id`: 职工ID - `name`: 职工姓名 - `year`: 出生年份 - `pay`: 基本工资 - `bonus`: 奖金 - `post`: 职位 - `department`: 部门 - `education`: 学历 - `bz`: 备注或特殊标识 而`class worker`则封装了对职工数据的管理功能,包括输入、搜索、修改、删除、排序和显示等功能。类中包含了两个数组`work[100]`和`retire[100]`,分别用于存储在职和退休职工的信息。 ### 2. 输入输出操作 系统提供了职工信息的输入功能,通过`worker::input()`函数实现。用户可以输入多个职工的信息,每输入一个职工信息后,系统会询问是否继续输入。输入的信息包括职工的ID、姓名、出生年份、学历、部门、基本工资、奖金、职位以及备注信息。 ### 3. 搜索功能 `worker::search()`函数实现了基于部门和职工ID的搜索功能。用户首先输入部门名称,然后输入想要查询的职工ID,系统会在存储的职工信息中查找匹配项,并显示该职工的所有详细信息。 ### 4. 修改功能 `worker::modify()`函数允许用户修改特定职工的信息。用户首先需要输入待修改职工的ID,系统找到该职工后,提供一个菜单供选择修改哪一项信息。修改选项包括职工的姓名、出生年份、基本工资、奖金、职位等。 ### 5. 其他功能 除上述功能外,`worker`类还包含`delet()`(删除功能)、`sort()`(排序功能)和`display()`(显示所有职工信息)等功能,但具体实现细节未在提供的部分代码中展现。 ### 6. 文件处理 虽然代码片段中没有展示,但是通过`worker::txt()`函数名推测,系统可能还具备读写文件的功能,用于持久化存储职工数据,使得即使程序关闭后,数据也不会丢失。 ### 总结 这个职工管理系统是基于C++语言开发的,适合初学者学习和实践面向对象编程的基础概念,如数据封装、类和对象的使用、函数的定义与调用等。此外,系统设计中的输入输出控制、条件判断、循环等基本控制流程也是学习C++的重要组成部分。通过这个项目,不仅可以加深对C++语法的理解,还能掌握如何在实际问题中应用这些知识,构建实用的软件系统。
#include <fstream.h>
#include <string.h>
struct people
{
char id[10]; //职工编号id
char name[10]; //职工姓名name
char year[10]; //职工出生年份year
int pay; //职工工资pay
int bonus; //职工奖金bonus
char post[20]; //职工职称post
char department[10]; //职工部门department
char education[10]; //职工学历education
int bz; //备注bz
};
class worker //定义工人类
{
private: //工人类私有成员
int flag;
int i,j,k;
people work[100]; //工人群
people retire[100]; //退休工人群
public:
worker();
void input(); //注册模块
void search(); //查询模块
void modify(); //修改模块
void delet(); //删除模块
void sort(); //排序模块
void txt(); //文件保存
};
worker::worker()
{
flag=0;i=0;j=1;k=0;
for(k=0;k<=100;k++)
{
work[k].bz=0;
}
}
void worker:: input() //注册模块
{
int temp;
cout<<"按任意键继续,按0退出本次注册!\n\n";
cin>>temp;
while(temp)
{
i++;
cout<<"请输入职工编号\n";//应加一条语句,判断该职工是否存 在
cin>>work[i].id;
cout<<"请输入职工姓名\n";
cin>>work[i].name;
cout<<"请输入职工出生年份\n";
cin>>work[i].year;
cout<<"请输入职工学历\n";
cin>>work[i].education;
cout<<"请输入职工部门\n";
cin>>work[i].department;
剩余16页未读,继续阅读
- 粉丝: 1
- 资源: 2
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- C/C++/Python/Java四种语言下的算法实现资源概览
- 12月月考期末复习资料.zip
- 2024 年(第 7 届)“泰迪杯”数据分析技能赛B 题 特殊医学用途配方食品数据分析
- usr_mk918_EN.hmi2
- Python源码实例集锦-猜数字游戏、Tkinter计算器、Flask Web应用、Pandas数据分析、BeautifulSoup爬虫入门
- 1111java:wude学习资料1111
- javaWeb物资管理系统项目源码
- Spring Boot开发资源综述:书籍、课程、工具与实战项目指导
- 毕业设计全流程指南:从知识资源到项目实施
- 2024 年(第 7 届)“泰迪杯”数据分析技能赛A 题 自动化生产线数据分析