职工信息管理系统外加课程设计报告文档格式.docx

上传人:b****5 文档编号:17606577 上传时间:2022-12-07 格式:DOCX 页数:31 大小:164.23KB
下载 相关 举报
职工信息管理系统外加课程设计报告文档格式.docx_第1页
第1页 / 共31页
职工信息管理系统外加课程设计报告文档格式.docx_第2页
第2页 / 共31页
职工信息管理系统外加课程设计报告文档格式.docx_第3页
第3页 / 共31页
职工信息管理系统外加课程设计报告文档格式.docx_第4页
第4页 / 共31页
职工信息管理系统外加课程设计报告文档格式.docx_第5页
第5页 / 共31页
点击查看更多>>
下载资源
资源描述

职工信息管理系统外加课程设计报告文档格式.docx

《职工信息管理系统外加课程设计报告文档格式.docx》由会员分享,可在线阅读,更多相关《职工信息管理系统外加课程设计报告文档格式.docx(31页珍藏版)》请在冰豆网上搜索。

职工信息管理系统外加课程设计报告文档格式.docx

//地址

floatsalary;

//工资

chardate[12];

//出生日期

charpswd[10];

//密码

};

infomationstu[SIZE];

//每个元素对应一条信息

intlen;

//总数

intID;

//登录者的索引

classperson//定义普通职工类

{

person();

~person();

voidload();

//读取信息

voidsave();

//保存信息

intmenu();

//菜单

voidmodify();

//修改信息

voidsearch();

//信息查询

intcheck(chars[],inti);

//检查是否有信息重复

};

classrenshi:

publicperson//定义人事部门类

voidinput();

//录入信息

voiddel();

//删除信息

classcaiwu:

publicperson//定义财务部门类

voidmodify_salary();

//修改工资

charfilename[]="

person.txt"

;

person:

:

person(){}

~person(){}

voidcaiwu:

modify_salary()

chars[20];

system("

cls"

);

//清屏

cout<

<

"

请输入要修改工资的职工的工号:

cin>

>

s;

for(inti=0;

i<

len;

i++)//查找所有信息,查询是否存在输入的信息

if(strcmp(stu[i].num,s)==0)

break;

//存在

if(i==len)//相等,说明输入信息不存在

{

对不起!

没有你输入工号的相关信息。

endl;

pause"

//任意键继续

return;

}

请输入工资:

stu[i].salary;

save();

//保存

工资修改成功!

//任意键继续

}

voidperson:

load()//读取所需信息

fstreamfile(filename,ios:

in);

//以读的方式打开文件,ios:

in见与书上245页

inti=0;

if(file.is_open())

while(!

file.eof())//判断是否到文件末尾

{

file>

stu[i].name

>

stu[i].num

stu[i].sex

stu[i].age

stu[i].department

stu[i].address

stu[i].salary

stu[i].date

stu[i].pswd

;

//读取文件

if(!

file.eof())

i++;

}

file.close();

//关闭文件

else

strcpy(stu[0].name,"

管理员"

strcpy(stu[0].num,"

0"

//初始登录工号

strcpy(stu[0].pswd,"

//初始登录密码

stu[0].department=2;

//为人事部门人员

strcpy(stu[0].sex,"

男"

strcpy(stu[0].address,"

北京"

strcpy(stu[0].date,"

2010-10-01"

stu[0].age=22;

stu[0].salary=2000;

i=1;

len=i;

save()//保存录入职工信息

out|ios:

trunc);

i++)

file

<

stu[i].name<

\t"

stu[i].num<

stu[i].sex<

stu[i].age<

stu[i].department<

stu[i].address<

stu[i].salary<

stu[i].date<

stu[i].pswd<

<

//写入文件

intperson:

check(chars[],inti)//检查是否重复

intg=0;

for(;

g<

g++)

if(strcmp(stu[g].num,s)==0&

&

i!

=g)//比较是不是一样,一样就说明重复了

return1;

//表示重复了

return0;

//查找了整个数组都没发现重复的表示没有重复

voidrenshi:

input()//录入信息

charch;

for(inti=len;

SIZE;

{

请输入姓名:

stu[i].name;

请输入工号:

stu[i].num;

while(check(stu[i].num,i)==1)

cout<

工号重复,请重新输入:

}

cout<

请选择性别(1、男2、女):

while

(1)

cin>

ch;

if(ch=='

1'

||ch=='

2'

else

输入错误请重新输入:

if(ch=='

strcpy(stu[i].sex,"

strcpy(stu[i].sex,"

女"

请输入年龄:

stu[i].age;

请选择部门(1、普通职工2、人事部门人员3、财务部门人员):

{

stu[i].department;

if(stu[i].department==1||stu[i].department==2||stu[i].department==3)

请输入地址:

stu[i].address;

请输入初始工资:

请输入出生日期(格式:

2012-01-02):

stu[i].date;

请输入密码:

stu[i].pswd;

len++;

//个数加1

一条信息录入完成,是否继续录入?

(y/n):

while

(1)

y'

Y'

n'

N'

break;

del()//删除信息

请输入要删除的工号:

i++)//遍历所有信息,查询是否存在输入的信息

//存在结束循环

if(i==len)//这二者相等说明查找完所有信息也没找到输入信息,说明输入信息不存在

\n"

}

stu[i]=stu[len-1];

//用最后一条信息覆盖要删除的信息

len--;

//信息条数减一

删除成功!

modify()//修改信息

inti;

chars[20],ch;

if(stu[ID].department==1)//是普通职工

i=ID;

请输入要修改的工号:

for(i=0;

i++)//查找了所有信息,查询是否存在输入的信息

if(strcmp(stu[i].num,s)==0)

break;

if(i==len)//相等,说明输入信息不存在

system("

return;

while(check(stu[i].num,i)==1)

修改成功!

search()//职工信息查询

请输入要查询的工号:

//存在

查询结果如下:

********************************************************************************"

if(i==ID||ID>

1)//是自己或不是普通职工

姓名工号性别年龄部门地址工资出生日期"

endl<

cout.setf(ios:

left);

//设置左对齐

setiosflags(ios:

fixed)<

setprecision

(2)//设置保留小数,其用法见书上228页的格式输出

setw(10)<

stu[i].name

setw(6)<

setw(12)<

<

姓名:

工号:

性别:

年龄:

部门:

出生日期:

"

endl;

*****************************************************************************"

备注:

1、普通职工2、人事部门人员3、财务部门人员"

voidlogin()//实现职工登录

charnum[10],pswd[10];

******************************************************************************"

人事部门初始工号:

0密码:

0"

\n\n\n\n\n\n\n请输入工号:

num;

i++)//查找所有信息,看是否存在输入的信息

if(strcmp(stu[i].num,num)==0)

对不起!

exit(0);

请输入密码:

pswd;

if(strcmp(pswd,stu[i].pswd)!

=0)//匹配密码

密码错误,登录失败。

ID=i;

//登录者索引

登录成功。

menu()//总的功能菜单

intc;

if(stu[ID].department==1)

********************************************************"

1、修改职工信息"

2、查询职工信息"

3、返回登录"

elseif(stu[ID].department==2)

**********************************************************"

1、增加职工信息"

2、修改职工信息"

3、查询职工信息"

4、删除职工信息"

5、返回登录"

elseif(stu[ID].department==3)

1、修改职工工资"

请选择:

c;

returnc;

//以下是对普通员工、人事部门、财务部门权限的分类

intperson1()//普通员工所具有的权限设置

personstud;

stud.load();

//读取文件信息

intsel=stud.menu();

//获取选择

switch(sel)

case1:

stud.modify();

break;

//修改

case2:

stud.search();

//查询

case3:

//返回登录

intrenshi1()//人事部门的功能

renshistud;

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

当前位置:首页 > 高中教育 > 高中教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1