版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据结构大作业
作业题目:职工信息管理系统姓
名:学号:
班级:
______________________指导教师:
______________________日期:
一、主要功能:
这个职工信息管理系统是由C语言编写的程序,它用起来很方便又很灵便。它由输入
职工信息,输出职工信息,按职工号,部门号,工资排序,按职工号,部门号,工资来输出
职工的所有信息。删除有关职工的所有信息,保存职工的所有信息并退出等11个模块儿组
成。
二、实验环境:C语言、C++、C#等等。
三、功能说明:
下面按步骤来介绍一下,职工信息管理系统的基本操作。
这是运行程序以后浮现的主界面。如图(1)所示:
-----------★★★★★★★★★★★★★★★★★------------
----------------☆☆☆欢迎使用职工信息管理系统☆☆☆-----------------
入
息
职
匕
1t工2
有的职工信息、
出
3工
职4
排
号有的职工号码
中
5门6
部i
上
工
工
7工
和8有职王的工资
职
与
职
9i的b
0盘
的所有信息以后,界面上会显示出《输入完成!》的命令。如图(2)所示:
再6做件看份\DAZUOY~l\da.exe
人职
姓
名
工
职
^号
工
^部
门o:1
|:1
工
入
职11
r贽
工g30
成
完
,
2.吊
命D:\SJ:件备份\DAZU0Y-l\da.exe
身的职工
职工的姓名职工的号码部门号职工的工资
jack1113000
John22221500
hu31232000
图(3)输出所有的职工信息
3.按职工号排序
该模块儿的功能是按职工号排序所有的职工。我们按3的时候,界面上会显示出《排序
完成!》的命令。如图(4)所示:
4.输出所有的职工号码
该模块儿的功能是显示出已排序好的所有职工的号码。操作如图(5)所示:
图(5)输出所有的职工号
5.按部门号排序
该模块儿的功能是按部门号排序所有职工的部门号。我们按5的时候,界面上会显示出
《排序完成!》的命令。如图(6)所示:
6.输出所有的部门号
该模块儿的功能是显示出已排序好的所有部门号。操作如图(7)所示:
图(7)输出所有的部门号
7.按职工的工资排序
该模块儿的功能是按工资排序所有职工的工资。我们按7的时候,界面上会显示出《排
序完成!》的命令。如图(8)所示:
图(8)按职工的工资排序
8.输出所有职工的工资
该模块儿的功能是显示出已排序好的所有职工的工资。操作如图(9)所示:
图(9)输出所有职工的工资
9.删除职工的所有信息
该模块儿的功能是删除有关职工的所有信息。我们按9的时候界面上会显示出《删除成
功!》的命令。如图(10)所示:
10.保存
该模块儿的功能是保存有关职工的所有信息。在这个程序中,该保存的文件尾随这个程序
的位置而保存。我们按b得时候界面上会显示出《保存成功!》的命令。如图(11)所示:
圆D:璇件蓄份\DAZUOY~l\da.e:
图(11)保存
11.退出
该模块儿的功能是退出系统,按0即可。
四、程序代码如下:
#include<stdio.h>
#definemaxsize20
typedefstructnode
(
intno,depno,salary;产no为职工号,depno为部门号salar为y工资数*/
charname[maxsize];/*职工姓名*/
structnode*pno,*pd叩no,*psalary,*n/e*xptn;o为职工号指针,pdepno为部门号指针,psalary为工资数
指针*/
[employee;
employee*insert(employee*head)
(
employee*h;
if(head==NULL)
(
employee*s,*h1;
h1=malloc(sizeof(employee));
s=malloc(sizeof(employee));
clrscr();
请输入职工姓名
请输入职工号
请输入部门号
请输入职工的工资
s->pno=NULL;
s->pdepno=NULL;
s->psalary=NULL;
s->next=NULL;
hI->pno=NULL;
h1->pdepno=NULL;
h1->psalary=NULL;
hI->next=s;
h=hl;
输入完成
getch();
)
if(head!=NULL)
(
employee*s,*p,*hl;
hl=head;
p=hl->next;
s=malloc(sizeofi(employee));
if(p->next!=NULL)
{
while(p->next!=NULL)
p=p->ncxt;
clrscr();
请输入职工姓名
请输入职工号
请输入部门号
请输入职工的工资
s->pno=NULL;
s->pdepno=NULL;
s->psalary=NULL;
s->next=NULL;
p->next=s;
h=hl;
输入完成
getch();
1
if(p->next==NLJLL)
(
clrscr();
请输入职工姓名
请输入职工号
请输入部门号
请输入职工的工资
s->pno=NULL;
s->pdepno=NULL;
s->psalary=NULL;
s->next=NULL;
p->next=s;
h=hl;
输入完成
getch();
)
}
return(h);
)
voidoutput(employee*hcad)
(
employee*p;
if(head==NULL)
(
clrscr();
这表格是空的,请重新输入
I
else
(
p=head->next;
if(p!=NULL)
{
clrscr();
所有的职工
职工的姓名职工的号码部门号职工的工资
while(p!=NULL)
(
p=p->next;
)
I
)
getch();
)
employee*SortByEmployeeNumber(employee*head)
employee*p,*q,*s,*h,*temp;
temp=malloc(sizeof(employee));
h=head;
for(s=head->next;s!=NULL;s=s->next)
(
P=s;
fbr(q=s->next:q!=NULL;q=q->next)
if((p->no)>(q->no))
p=q;
if(p!=s)
temp->no=s->no;
temp->depno=s->depno;
temp->salary=s->salary;
strcpy(temp->name,s->name);
s->no=p->no;
s->depno=p->depno;
s->salary=p->salary;
strcpy(s->name,p->name);
p->no=temp->no;
p->depno=temp->depno;
p->salary=temp->salary;
strcpy(p->name,temp->name);
clrscr();
排序完成
getch();
retum(h);
1
employee*SortByDepartmentNumber(employee*head)
(
employee*p,*q,*s,*h,*tcmp;
temp=malloc(sizeof(employee));
h=head;
fbr(s=head->next;s!=NULL;s=s->next)
(
p=s;
fdr(q=s->next;q!=NULL;q=q->next)
if((p->depno)>(q->depno))
p=q;
if(p!=s)
temp->no=s->no;
temp->depno=s->depno;
tcmp->salar)/=s->salary;
strcpy(temp->name,s->name);
s->no=p->no;
s->dcpno=p->dcpno;
s->salary=p->salary;
strcpy(s->nanie,p->name);
p->no=temp->no;
p->depno=temp->depno;
p->salary=tcmp->salary;
strcpy(p->name,temp->name);
)
)
clrscrQ;
排序完成
getch();
rctum(h);
)
employee*SortByWages(employee*head)
(
employee*p,*q,*s,*h,*temp;
tcmp=malloc(sizeofi(employce));
h二head;
for(s=head->next;s!=NULL;s=s->next)
(
p=s;
fbr(q=s->next;q!=NULL;q=q->next)
{
if((p->salary)>(q->salary))
p=q;
)
if(p!=s)
{
temp->no=s->no;
temp->depno=s->depno;
temp->salary=s->salary;
strcpy(temp->name,s->name);
s->no=p->no;
s->depno=p->depno;
s->salary=p->salary;
strcpy(s->name,p->name);
p->no=temp->no;
p->depno=temp->depno;
p->salary=temp->salary;
strcpy(p->name,temp->name);
}
)
clrscr();
排序完成
getch();
return(h);
)
employee*DeleteAllInformation()
(
employee*h;
h=NULL;
clrscr();
删除成功
getch();
retum(h);
}
voidshow()
(
textcolor(22);
clrscr();
1।
1---★★★★★★★★★★★★★★★★---|
1----------☆-女-☆欢迎使用职工信息管理系统☆☆☆---------1
1
11.输入职工的信息2.输出所有的职工信息1
13.按职工号排序4.输出所有的职工号码1
15.按部门号排序6输出所有的部门号1
17.按职工的工资排序8.输出所有职工的工资1
19.删除职工的所有信息b.保存1
10.退出
।1
voidsave(structemployee*head)
(
FILE*file;
employee*p;
职工记录表/*打开文件,并判断打开是否正常*/
不能打开文件
/*将换行符号写入文件*/
职工的姓名职工的号码部门号职工的工资
fbr(p=head->next;p!=NULL;p=p->next)
写入记录*/
/*将换行符号写入文件号
)
fdose(file);/*关闭文件*/
clrscrQ;
保存成功
getch();
)
main()
(
charflag;
employee*head;
hcad=NULL;
clrscr();/*在win-tc中显示汉字*/
show();
while(flag!='0')
(
switch(flag)
(
caseT:head=insert(head);
show();break;
case2:output(hcad);
show();
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 工厂设备安全检查与隐患防控方法
- 移动支付市场现状及发展前景分析
- 电影制作成本控制与内审技巧
- 临床营养支持团队建设与管理
- 大气环境质量提升与社会责任行动计划
- 人力资源专业培训及面试全解析
- 旅游行业IT技术支持经理面试要点全解
- 教育培训机构的品牌建设
- 高精度地质雷达在工程建设中的应用报告
- 创业公司的招聘策略与挑战分析
- 消防供水设施课件
- 市场监督管理行政处罚程序规定解读
- 函数的零点与方程的解(说课课件)
- GB/T 29061-2012建筑玻璃用功能膜
- GB/T 10128-2007金属材料室温扭转试验方法
- FZ/T 94005-1991刚性剑杆织机
- 无机材料工艺学-陶瓷2-原料
- 安全阀培训-课件
- 海洋生态学课件一
- DBJ50-T-365-2020 海绵城市建设项目评价标准
- 周口市医疗保障门诊特定药品保险申请表
评论
0/150
提交评论