职工信息管理系统Word文件下载.docx
- 文档编号:14938875
- 上传时间:2022-10-26
- 格式:DOCX
- 页数:32
- 大小:229.51KB
职工信息管理系统Word文件下载.docx
《职工信息管理系统Word文件下载.docx》由会员分享,可在线阅读,更多相关《职工信息管理系统Word文件下载.docx(32页珍藏版)》请在冰豆网上搜索。
2.系统设计
2.1设计目标
随着计算机产业的不断发展和信息时代的到来,各个企业和部门对员工的信息管理也已经走上了数字化的阶段,尤其是利用微机对工资的管理已经在各个企业单位起着越来越多的作用。
以前的财会人员完全是靠手写来完成员工的各种记录,每天都忙碌于各种繁多的票据之间,这种工作繁重复杂,容易出错,不易修改,所以使用一个好的管理系统对减轻管理人员的工作量是很有帮助的,也是一个企业发展不可缺少的基础,它的开发应用简单而不失一般性,操作方便,功能强大,系统化,规范化,自动化,而且经济使用的职工管理系统已经成为了各个企业和部门离不开的电脑软件。
本系统实现的操作和功能如下:
1)职工信息表的建立:
根据职工提供的信息,按单链表的方法建立职工信息表;
2)职工信息的添加:
根据公司的需要,增加新的职工,必须把职工的基本信息写入职工信息表,方便公司管理;
3)职工信息的查询:
根据公司需要,查找某一个职工的信息,可以按姓名或编号查找,将都显示职工的全部信息。
4)职工信息的修改:
根据公司或职工需要,如果信息需要修改,可对职工的人一个信息进行更改。
5)职工信息的排序:
根据公司需要,可对职工进行排序;
6)职工信息的删除:
根据公司需要,若职工不在公司工作,可对其信息删除,以及时更新职工信息表;
7)职工信息的输出:
根据公司需要,若要浏览职工信息,可对职工的全部信息输出,方便观看。
2.2设计思想
职工信息表用单链表作为存储结构,且为了查找方便,职工信息应有序。
为了查找方便,职工的线性表按职工编号有序,并且,为了插入和删除方便,应以链表作为存储结构。
通过c++,使系统实现建表、增加信息、删除信息、查找信息、排序、输出等功能,而且提供一个界面来调用各个功能,并使界面尽可能清晰美观。
2.3系统模块划分
插入新的结点
删除结点
无记录
按菜单选项
结束程序运行
输出记录
冒泡排序法实现
按编号查询
按姓名查询
尾插法建立职工信息表
3.数据结构与算法描述
3.2职工信息表的建立,将一个职工结点按其编号的次序插入有序职工链表的相应位置,以保持链表的有序性。
基本思想是使用尾插法建立新的结点。
建表算法如下描述:
//用尾插法建立职工链表函数
voidCreateList(NodePtr&
head)
{//尾插法建立带头结点的职工链表算法
NodePtrrear;
rear=newListNode;
intflag=0;
//结束标志置0
rear=head;
//尾指针初始指向头结点
while(flag==0){
NodePtrp;
p=newListNode;
p->
link=NULL;
cout<
<
"
请输入:
;
编号姓名性别出生日期学历工作年月职务基本工资电话地址\n"
--------------------------------------------\n"
cin>
>
p->
num>
name>
sex>
birthday>
education>
working_day;
post>
base_pay>
phone>
addr;
rear->
link=p;
//新结点连接到尾结点之后
rear=p;
//尾结点指向新结点
结束建表吗?
(0/1):
flag;
}
filesave(head);
}
3.2职工信息的输出
voidPrintList(NodePtrhead)
{
p=head->
link;
//因为链表带头结点,使p指向链表开始接点
编号姓名性别出生年月学历工作年月职务基本工资电话地址\n"
while(p!
=NULL)
{
num<
"
name<
sex<
birthday<
education<
working_day<
post<
base_pay<
phone<
addr<
endl;
p=p->
//后移一个结点
}
3.2职工信息的查询,如果结点为空,输出:
没有查到要查询的职工;
若结点不为空,可按姓名和编号进行查询。
voidListFind(NodePtr&
{//有序职工链表上的查找
//假定职工表带头结点
charnum[10],name[20];
intxz;
================\n"
1.按编号查询\n"
2.按姓名查询\n"
请选择:
cin>
xz;
if(xz==1){
请输入要查找者的编号:
num;
do{
if(strcmp(p->
num,num)==0){
------------------------------------\n"
break;
}elsep=p->
if(p==NULL)
没有查到要查询的职工!
\n"
}while(p!
=NULL);
if(xz==2){
请输入要查找者的姓名:
name;
name,name)==0){
3.2职工信息插入
voidInsertNode(NodePtr&
link=head->
head->
3.2职工信息的修改,先输入职工的姓名,若没有该职工,输出:
该系统没有该姓名的职工信息,无法修改..,若有该职工,则可以修改该职工的任何一个信息;
具体算法如下:
voidModify(NodePtr&
head)//修改职工信息
charname[15];
//姓名
请输入你要修改职工信息的姓名:
while(p)
{
name,name)==0)
if(p==NULL)
该系统没有该姓名的职工信息,无法修改..."
请按任意键继续..."
getch();
ListFind(head);
else
cout<
-------你现在可以修改此职工的信息了-------"
//数据域。
请输入职工新编号:
endl<
请输入职工新姓名:
请输入职工新性别:
sex;
请输入职工新出生年月:
birthday;
while(cin.fail())
{
请输入正确的年份格式。
cin.clear();
fflush(stdin);
}
请输入职工新学历:
education;
请输入职工新工作年月:
请输入职工新职称:
post;
请输入职工基本工资:
base_pay;
请输入正确的工资数据。
fflus
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 职工 信息管理 系统