员工管理系统毕业设计论文Word格式.docx

上传人:b****4 文档编号:8051158 上传时间:2023-05-10 格式:DOCX 页数:38 大小:167.63KB
下载 相关 举报
员工管理系统毕业设计论文Word格式.docx_第1页
第1页 / 共38页
员工管理系统毕业设计论文Word格式.docx_第2页
第2页 / 共38页
员工管理系统毕业设计论文Word格式.docx_第3页
第3页 / 共38页
员工管理系统毕业设计论文Word格式.docx_第4页
第4页 / 共38页
员工管理系统毕业设计论文Word格式.docx_第5页
第5页 / 共38页
员工管理系统毕业设计论文Word格式.docx_第6页
第6页 / 共38页
员工管理系统毕业设计论文Word格式.docx_第7页
第7页 / 共38页
员工管理系统毕业设计论文Word格式.docx_第8页
第8页 / 共38页
员工管理系统毕业设计论文Word格式.docx_第9页
第9页 / 共38页
员工管理系统毕业设计论文Word格式.docx_第10页
第10页 / 共38页
员工管理系统毕业设计论文Word格式.docx_第11页
第11页 / 共38页
员工管理系统毕业设计论文Word格式.docx_第12页
第12页 / 共38页
员工管理系统毕业设计论文Word格式.docx_第13页
第13页 / 共38页
员工管理系统毕业设计论文Word格式.docx_第14页
第14页 / 共38页
员工管理系统毕业设计论文Word格式.docx_第15页
第15页 / 共38页
员工管理系统毕业设计论文Word格式.docx_第16页
第16页 / 共38页
员工管理系统毕业设计论文Word格式.docx_第17页
第17页 / 共38页
员工管理系统毕业设计论文Word格式.docx_第18页
第18页 / 共38页
员工管理系统毕业设计论文Word格式.docx_第19页
第19页 / 共38页
员工管理系统毕业设计论文Word格式.docx_第20页
第20页 / 共38页
亲,该文档总共38页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

员工管理系统毕业设计论文Word格式.docx

《员工管理系统毕业设计论文Word格式.docx》由会员分享,可在线阅读,更多相关《员工管理系统毕业设计论文Word格式.docx(38页珍藏版)》请在冰点文库上搜索。

员工管理系统毕业设计论文Word格式.docx

更新

图3-2第二层数据流图

事务:

删除,添加,修改,查询;

职工信息E-R图

323数据字典

数据流字典

1数据流名称

:

职工-主管类

数据结构:

职工编号

id

姓名name

性别sex工资salary

出生时间birth

参加工作时间worktime

职位a

2数据流名称:

职工-工人类

职工编号id姓名name

职位b

3.2.4处理逻辑的定义

①处理名:

添加职工信息

输入:

根据选择录入数据

输出:

显示所添加的信息

处理定义:

当选择了要输入的数据类型时,按照提示输入所需要的信息,并录入到职工信息库里

激发条件:

选择添加职工信息

②处理名:

删除职工信息

键入要删除的职工号

显示输入职工好所对应的信息

处理定义:

根据键入的职工号查到相关的信息,经确认后,从信息库中删除

选择删除职工信息

3处理名:

修改职工信息

键入要修改的职工号,并选择要修改的项

显示修改后的该职工信息

键入要修改的职工号,显示该职工的信息,根据提示选择要修改的项,修改成功后显示

修改后的职工信息

选择修改职工信息

4处理名:

查找职工信息

选择要查找的类型(职工号,姓名,年龄)

显示所要查找的职工信息

选择要查找的类型,从信息库中查找并显示

选择查找记录

5处理名:

列出信息

选择输出类型

根据选择输出数据

根据选择的输出类型,输出职工信息

选择列出信息功能

6处理名:

计算平均年龄

输出职工的平均年龄

调用函数,输出职工的平均年龄

选择计算平均年龄功能

7处理名:

创建职工信息简表

显示职工信息简表

创建并显示职工信息简表

选择创建职工信息简表功能

8处理名:

存入磁盘

把数据输出到磁盘文件中

输出职工信息文件

选择存入磁盘功能

职工信息包括职工号,姓名,性别,年龄,工资,出生日期,工作时间,试设计一职工信息

管理系统,使之能提供以下功能:

1)建立职工信息数据,包括职工编号、姓名、性别、工资、出生时间、参加工作时间和

年龄(必须计算得到)。

2)根据职工信息表,建立只含有姓名和年龄的职工信息简表。

3)抽取并计算职工的平均年龄。

4)检索(查找)指定信息。

(如按姓名检索、按年龄检索)

5)修改职工信息

6)删除职工信息

7)保存数据文件3.3.1功能设计

功能框架图如下:

Y

N

Default

<

Case6

Case7

Case5

Case8

列出信息break

平均年龄break

_.1创建简表break

存入磁盘break

选择错误break

结束

332系统运行环境

VisualC++是一个功能强大的可视化软件开发工具。

VisualC++6.0不仅是

个C++编译器,而且是一个基于Windows操作系统的可视化集成开发环境

(integrated

developmentenvironment,IDE

)。

VisualC++6.0由许多组件组成,包括编辑器、调

试器以及程序向导AppWizard、类向导ClassWizard等开发工具。

这些组件通过一

个名为DeveloperStudio的组件集成为和谐的开发环境。

3.4系统实施

3.4.1程序代码

#include<

iostream>

string>

iomanip>

fstream>

usingnamespacestd;

intnum仁0,num2=0,num=0;

floatavery=0.0;

charsave1;

enumtsex{man,woman,mid};

voidfoundid(stringid1);

voidfoundname(stringn);

voidfoundage(inta);

intfoundhao(stringid1);

voidsave();

voidlisebiao(){};

classemployee{

stringid;

stringname;

tsexsex;

intsalary;

intbirth;

intworktime;

intage;

public:

employee();

employee(stringi,stringna,tsexs,intsa,intbi,intwt);

~employee(){};

employee&

operator=(employee&

e){

id=e.id;

name=e.name;

sex=e.sex;

salary=e.salary;

birth=e.birth;

worktime=e.worktime;

age=e.age;

return*this;

voidadd();

voiddisplay();

stringgetid(){returnid;

}

stringgetname(){returnname;

intgetage(){returnage;

tsexgetsex(){returnsex;

intgetsalary(){returnsalary;

intgetbirth(){returnbirth;

intgetworktime(){returnworktime;

voidsetid(stringid1){id=id1;

voidsetname(stringn1){name=n1;

voidsetsex(ints){

if(s==1)sex=man;

elseif(s==2)sex=woman;

elsesex=mid;

voidsetsalary(intsa){salary=sa;

voidsetbirth(intbi){birth=bi;

voidsetworktime(intwt){worktime=wt;

voidclean(){employee();

}};

employee:

employee(){

sex=mid;

salary=0;

birth=0;

worktime=0;

age=0;

}employee:

employee(stringi,stringna,tsexs,intsa,intbi,intwt){

id=i;

name=na;

sex=s;

salary=sa;

birth=bi;

worktime=wt;

age=2009-bi/10000;

voidemployee:

add(){

intf,sex1;

do{

cout<

"

请输入职工号:

\t"

;

cin>

>

id;

f=foundhao(id);

}while(f==1||f==2);

请输入职工姓名

name;

请输入职工性别(1.男\t2.女):

sex1;

switch(sex1)case1:

sex=man;

break;

case2:

sex=woman;

default:

选择错误,重新选择\n"

}while(sex1!

=1&

&

sex1!

=2);

请输入基本工资:

salary;

if(salary<

1000)

输入错误,基本工资应在1000以上!

\n"

}while(salary<

1000);

请输入出生日期:

\t"

birth;

请输入参加工作日期:

worktime;

添加职工信息如下:

\n"

display();

是否保存?

y/n:

save1;

if(save1=='

y'

||save1=='

Y'

num++;

保存成功!

else

您放弃了保存!

添加失败\n"

display(){

inti;

工号:

id<

'

\n'

姓名:

name<

性别:

if(sex==man)cout<

男"

elseif(sex==woman)cout<

女"

elsecout<

无"

endl;

age=2009-birth/10000;

年龄:

age<

出生年月:

i=birth;

i/10000<

年"

i=i%10000;

i/100<

月"

i%100<

日"

工资:

salary<

参加工作时间:

worktime<

classmanager:

publicemployee{

inta;

manager();

manager(stringi,stringna,tsexs,intsa,intbi,intwt,intp1);

~manager(){};

voidaddmanager();

}m[100];

manager:

manager(){a=1;

}p1):

employee(i,na,s,sa,bi,wt){

a=p1;

voidmanager:

addmanager(){

add();

a=1;

classwork:

publicemployee{public:

intb;

work();

work(stringi,stringna,tsexs,intsa,intbi,intwt);

~work(){};

voidaddwork();

}w[100];

work:

work(){b=0;

work(string

i,string

na,tsex

s,int

sa,int

bi,int

wt):

b=0;

voidwork:

addwork(){

voidaddnew(){

intselect;

charf;

select;

switch(select){case1:

m[num1].addmanager();

num1++;

w[num2].addwork();

num2++;

f=exit();

}while(select!

select!

=2||f=='

n'

);

voidjiludelete(){

managert1;

workt2;

inti,j;

stringid1,id2;

charb,f;

id2;

if(foundhao(id2)==0){cout<

对不起!

没有这个工人的记录"

return;

你要删除的信息是:

foundid(id2);

确定要删除该记录?

y/n\n"

b;

if(b=='

)return;

if(foundhao(id2)==1){

if(m[0].getid()==id2&

num1==1)m[0].clean();

elseif(m[num-1].getid()==id2)m[num1-1].clean();

{for(i=0;

i<

num1-1;

i++)

if(m[i].getid()==id2&

num1!

=1){

t1=m[i];

for(j=i;

j<

num1;

j++)

m[j]=m[j+1];

num1--;

elseif(foundhao(id2)==2){

if(w[0].getid()==id2&

num2==1)w[0].clean();

elseif(w[num-1].getid()==id2)w[num2-1].clean();

num2-1;

if(w[i].getid()==id2&

num2!

t2=w[i];

num2;

w[j]=w[j+1];

num2--;

num--;

}while(f=='

voidchange(){

stringid2,str;

intt,j,k;

请输入要修改信息的职工号:

elseif(foundhao(id2)==1){

要修改职工号的信息:

for(t=0;

t<

t++)

if(m[t].getid()==id2){

修改的选项:

1职工号2姓名3性别4工资5出生日期6工

作时间"

\t'

j;

switch(j){

case1:

新的职工号:

str;

m[t].setid(str);

case4:

case3:

case5:

新的姓名:

m[t].setname(str);

新的性别(1.男\t2.女)"

k;

m[t].setsex(k);

新的工资:

m[t].setsalary(k);

新的出生日期

m[t].setbirth(k);

case6:

error"

m[t].display();

if(w[t].getid()==id2){

1职工号2姓名3性别4工资5出生日期

switch(j){case1:

setw(20);

w[t].setid(str);

新的姓名"

w[t].setname(str);

女)"

cin>

>

w[t].setsex(k);

新的工资"

w[t].setsalary(k);

w[t].setbirth(k);

w[t].setworktime(k);

w[t].display();

voidfound(){

stringi;

charse,f;

请选择查询方式:

1职工号2姓名3

年龄\t"

se;

switch(se){

case'

1'

请输入要查找的职工号:

i;

你要查询的人的信息如下:

foundid(i);

2'

请输入要查找的姓名:

"

foundname(i);

3'

请输入要查找的年龄"

a;

foundage(a);

没有此选项,请重新选择"

}while(se!

='

se!

||f=='

intfoundhao(stringid1){

for(i=0;

if(m[i].getid()==id1){

return1;

for(j=0;

if(w[j].getid()==id1){

return2;

return0;

voidfoundid(stringid1){

intflage=0;

m[i].display();

flage=1;

w[j].display();

if(flage==0)cout<

对不起!

没有找到\t"

voidfoundname(stringn){

if(m[i].getname()==n){

if(w[j].getname()==n){

flage=2;

voidfoundage(inta){

if(m[i].getage()==a){

if(w[j].getage()==a){

stringoutsex(tsexs){

stringoutposition(ints){

elsereturn"

工人"

voidlistbiao(){

inti,j,z;

请选择输出类别:

1主管类2工人类3全部信息"

z;

id"

name"

sex"

salary"

birthday"

\t'

worktime"

age"

switch(z){

i++)cout<

m[i].getid()<

m[i].getname()<

outsex(m[i].getsex())<

m[i].getsalary()<

m[i].getbirth()<

m[i].getworktime()<

m[i].getage()<

j++)cout<

w[j].getid()<

w[j].getname()<

outsex(w[j].getsex())<

w[j].gets

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2