C++员工管理系统Word文档下载推荐.docx

上传人:b****6 文档编号:18908561 上传时间:2023-01-02 格式:DOCX 页数:23 大小:19.22KB
下载 相关 举报
C++员工管理系统Word文档下载推荐.docx_第1页
第1页 / 共23页
C++员工管理系统Word文档下载推荐.docx_第2页
第2页 / 共23页
C++员工管理系统Word文档下载推荐.docx_第3页
第3页 / 共23页
C++员工管理系统Word文档下载推荐.docx_第4页
第4页 / 共23页
C++员工管理系统Word文档下载推荐.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

C++员工管理系统Word文档下载推荐.docx

《C++员工管理系统Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《C++员工管理系统Word文档下载推荐.docx(23页珍藏版)》请在冰豆网上搜索。

C++员工管理系统Word文档下载推荐.docx

voidinputAllowance(floati);

floatgetMedicalInsurance(){returnmedicalInsurance;

voidinputMedicalInsurance(floatm);

doublegetOverTimePay(){returnoverTimePay;

voidinputOverTimePay(doubleo);

};

voidProfession:

:

inputRank(charc)

rank=c;

inputAllowance(floati)

allowance=i;

inputBasicSalary(floatb)

basicSalary=b;

inputMedicalInsurance(floatm)

medicalInsurance=m;

inputOverTimePay(doubleo)

overTimePay=o;

/*classLetter

stringletter;

stringgetL(){returnletter;

*/

classWorker:

publicProfession//员工

stringname,profession,letter;

intID;

doublewages;

//税后工资

doublesalary;

//税前工资

doubletotalWorkingtime;

//总工时

charperson;

//态度

//等级

intpersonalPassword;

//个人密码

intrankflag;

//升级标志

intletterflag;

//信件

intmoneyflag;

//加薪标志

Worker(intx=0,inty=0,intz=0):

rankflag(x),letterflag(y),moneyflag(z)

{}

stringgetName(){returnname;

voidinputName(stringn);

intgetID(){returnID;

voidinputID(inti);

stringgetProfession(){returnprofession;

voidinputProfession(stringp);

voidgetLetter(){cout<

<

letter;

voidchangeLetter(strings);

doublegetWages(){returnwages;

voidgetTotalworkingtime(doublet);

doublereTotalworkingtime()

{

returntotalWorkingtime;

}

chargetPerson(){returnperson;

doublegetSalary(){returnsalary;

intgetMf(){returnmoneyflag;

intgetRf(){returnrankflag;

intgetLf(){returnletterflag;

voidchangeLf();

voidchangeMf();

voidchangeRf();

voidchangeSalary(doubles);

voidevaluation();

voidoutPut();

voidoriginalSalary();

voidcalculateSalary();

voidCongratulation();

voidopinion();

voidcheck(Worker*head);

voidchangeRank(charc,Worker*clerk);

classWorker*next;

voidWorker:

changeLetter(strings)

letter=s;

inputName(stringn)

name=n;

inputID(inti)

ID=i;

inputProfession(stringp)

profession=p;

getTotalworkingtime(doublet)

totalWorkingtime=t;

changeLf()

letterflag--;

changeMf()

moneyflag++;

changeRf()

rankflag++;

changeSalary(doubles)

salary=s;

originalSalary()//无税

salary=getBasicSalary()+(totalWorkingtime-8*30)*getOverTimePay()+getAllowance()+getMedicalInsurance();

totalPay=totalPay+salary;

calculateSalary()//税

if(salary>

5000)

wages=salary-salary*0.5;

elseif(salary>

1000&

&

salary<

=5000)

{

wages=salary-salary*0.3;

evaluation()

if(totalWorkingtime<

30)

person='

D'

;

elseif(totalWorkingtime>

=30&

totalWorkingtime<

60)

C'

=60&

90)

B'

=90)

A'

outPut()//数出

cout<

"

姓名"

setw(8)<

ID"

职业"

基本工资"

津贴"

医保"

总工时"

工作评价"

工资"

endl;

getName()<

ID<

profession<

getBasicSalary()<

getAllowance()<

getMedicalInsurance()<

reTotalworkingtime()<

getPerson()<

getWages()<

Congratulation()//祝贺

if(rankflag==1)

恭喜您升职了"

rankflag=0;

elseif(moneyflag==1)

恭喜您加薪了"

moneyflag=0;

calculateSalary();

cout<

您现在薪水为"

wages<

opinion()//意见

cin>

>

nemberOfopinions++;

letterflag=1;

check(Worker*head)//

Worker*clerk=head->

next;

intid;

chars;

stringd;

输入您的ID"

id;

if(clerk!

=NULL&

id==(*clerk).getID())

{

(*clerk).Congratulation();

if(Bossflag==1)

{

cout<

有信件"

(*clerk).getLetter();

Bossflag=0;

}

(*clerk).outPut();

是否提出申请"

cout<

y/n"

cin>

s;

if(s=='

y'

{

input:

cin>

d;

(*clerk).opinion();

}

}

changeRank(charr,Worker*clerk)//等级

Professiona('

a'

8000,2000,200,300),b('

b'

7000,1500,150,200),c('

c'

6000,1000,100,100),d('

d'

3000,500,50,70);

if(r=='

{

(*clerk).inputRank(a.getRank());

(*clerk).inputBasicSalary(a.getBasicSalary());

(*clerk).inputMedicalInsurance(a.getMedicalInsurance());

(*clerk).inputAllowance(a.getAllowance());

(*clerk).inputOverTimePay(a.getOverTimePay());

}

elseif(r='

(*clerk).inputRank(b.getRank());

(*clerk).inputBasicSalary(b.getBasicSalary());

(*clerk).inputMedicalInsurance(b.getMedicalInsurance());

(*clerk).inputAllowance(b.getAllowance());

(*clerk).inputOverTimePay(b.getOverTimePay());

(*clerk).inputRank(c.getRank());

(*clerk).inputBasicSalary(c.getBasicSalary());

(*clerk).inputMedicalInsurance(c.getMedicalInsurance());

(*clerk).inputAllowance(c.getAllowance());

(*clerk).inputOverTimePay(c.getOverTimePay());

(*clerk).inputRank(d.getRank());

(*clerk).inputBasicSalary(d.getBasicSalary());

(*clerk).inputMedicalInsurance(d.getMedicalInsurance());

(*clerk).inputAllowance(d.getAllowance());

(*clerk).inputOverTimePay(d.getOverTimePay());

classBoss

voidemployed(Worker*head);

//录用

voidfire(Worker*head);

//踢人

voidchangeWages(Worker*head);

//加薪

voidwokersApply(Worker*head);

//职工建议

voidCheckThesalary(Worker*head);

//查看

voidpromotion(Worker*head);

//升职

voidBoss:

employed(Worker*head)

fire(Worker*head)

输入姓名"

stringname1;

Worker*clerk=head->

想踢谁?

cin>

name1;

do{

name1==(*clerk).getName())

id=(*clerk).getID();

if(((*clerk).getPerson()=='

)||((*clerk).getPerson()=='

))

该员工评价B级以上,真的要解雇他?

chara;

a;

if(a=='

Worker*p,*q;

q=head;

totalPay=totalPay-(*clerk).getSalary();

while(q->

next!

q->

next->

getID()!

=id)

q=q->

if(q->

=NULL)

{

p=q->

q->

next=q->

count--;

......成功删除!

"

}//加入主菜单

else

Worker*p,*q;

clerk=clerk->

}while(clerk!

=NULL);

changeWages(Worker*head)

stringc;

chard;

intflag=0;

c;

do

do

if(clerk!

(*clerk).getName()==c)

{

flag=1;

要更改吗?

if(d=='

doubles;

输入薪水"

cin>

(*clerk).changeSalary(s);

(*clerk).changeMf();

break;

if(flag==0)

!

对不起!

您要查询的职工不存在!

您想继续查询吗?

(y/n)"

}while(d=='

);

wokersApply(Worker*head)

if(nemberOfopinions!

=0)

您有"

nemberOfopinions<

个信件"

if(clerk!

(*clerk).getLf()==1)

cout<

(*clerk).getName()<

endl<

(*clerk).getID()<

(*clerk).getPerson()<

(*clerk).changeLf();

(*clerk).getLetter();

要对他说些什么吗?

输入‘恩’"

if(c=="

恩"

stringopinion;

建议:

opinion;

(*clerk).changeLetter(opinion);

Bossflag=1;

}while(clerk=NULL);

CheckThesalary(Worker*head)

charc;

stringname;

do{

boolflag=0;

请输入要查找的职工的姓名:

name;

name==(*clerk).getName())

(*clerk).outPut();

if(flag==0)

cout<

while(c!

='

c!

n'

指令错误<

请输入y/n!

}

}while(c=='

promotion(Worker*head)//升职

请输入ID"

charc;

(*clerk).outPut();

if((*clerk).getRank()=='

员工已达最高级"

else

确定是否升级"

if(c=='

(*clerk).changeRank((char)((*clerk).getRank()-1),clerk);

(*clerk).changeRf();

cout<

升职成功"

else

=

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

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

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

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