2020年度C公司人员信息管理系统课程设计报告_第1页
2020年度C公司人员信息管理系统课程设计报告_第2页
2020年度C公司人员信息管理系统课程设计报告_第3页
2020年度C公司人员信息管理系统课程设计报告_第4页
已阅读5页,还剩142页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C公司人员信息管

理系统课程设计报

告TOC\o"1-5"\h\z1糸统需求分析 12总体设计 23详细设计及实现 64系统调试 1315结论 736心得体会 1377参考书目 751系统需求分析1.1系统设计的目的与意义:现在的公司人员数量及职位种类较多,各样的人事管理活动也比较频繁,因此需要设计ー个公司人员信息管理系统来对公司员エ信息进行管理。1.2系统功能需求:本系统有五个类:基类:employee、派生类:manager>technician>salesman>salesmanager,储存经理、技术人员、销售人员、销售经理信息。(1)添加功能程序能够任意添加上述四类人员的记录,可提供选择界面供用户选择所要添加的人员类别,要求人员的编号要唯一,如果添加了重复编号的记录时,则提示用户数据添加重复并取消添加。(2)查询功能可根据编号、姓名等信息对已添加的记录进行查询。如果未找到,给出相应的提示信息,如果找到,则显示相应的记录信息。(3)显ホ功能可显示当前系统中所有记录。(4)修改功能可根据查询结果对相应的记录进行修改,修改时注意编号的唯一性。(5)删除功能对已添加的人员记录进行删除。如果当前系统中没有相应的人员记录,则提示“记录为空!”并返回操作;否则输入要删除的人员的编号或姓名,根据所输入的信息删除该人员记录,如果没有找到该人员信息,则提示相应的记录不存在。(6)统计功能能根据多种参数进行人员的统计。例如:统计四类人员数量以及总数,统计男、女员エ的数量,统计平均エ资、最高工资、最低工资等。(7)保存功能将当前系统中各类人员记录存入文件中。(8)读取功能将保存在文件中的人员信息读入到当前系统中,以供用户使用。2总体设计系统功能分析:系统经过调用函数来实现信息添加、信息查询、信息显示、信息修改、信息删除、以及数据读取保存文件等功能。add〇函数用于录入信息;search()函数用来查询信息;show()函数用来显示信息;alter〇函数用来修改信息;del〇函数用来删除信息;stat()函数用来统计信息read〇函数用于将文件中的数据读取到内存中;save〇函数用于将内存中的信息存入文件内;主函数main()用于调用这些函数。系统功能模块划分与设计:系统定义了manger类、technician类、salesman类、salesmanger类这四个类,定义了add()、search()、show()、alter()、del()、stat()、read()、save()、input()、output。等函数来实现系统所需功能。系统功能模块图:employee

virtualvoidadd()=0;virtualvoidsearch()=0;virtualvoidshow()=0;virtualvoidalter()=0;virtualvoiddel()=0;virtualvoidstat()=O;图3.1employee类(2)经理类的设计manager

voidadd();voidsearch();voidshow();voidalter();一 丿图3.2经理类(3)技术人员类的设计technicianvoidadd();voidsearch();voidshow();voidalter();voiddel();voidstat。;voidstat。;图3.3技术人员类(4)销售人员类的设计salesmansalesmanvoidadd();voidsearch();voidshow();voidalter();voiddel();

图3.4销售人员类(5)成绩类的设计salesmanagervoidadd();voidsearch();voidshow();voidalter();voiddel();3详细设计及实现employee类(抽象类)的实现#include<string>usingnamespacestd;classemployeepublic:employee(void);-employee(void);virtualvoidadd()=0;virtualvoidsearch()=0;virtualvoidshow()=0;virtualvoidalter()=0;virtualvoiddel()=0;virtualvoidstat()=O;virtualvoidsave()=0;virtualvoidread()=0;virtualvoidinput()=0;virtualvoidoutput()=0;protected:stringnumber;stringname;stringsex;stringdepartment;stringrank;floatsalary;};经理类的实现manager.h#include"employee.h"classmanager:virtualpublicemployee(public:manager(void);-manager(void);voidadd();voidsearch();voidshow();voidalter();voiddel();voidstat();voidsave();voidread();voidinput();voidoutput();manager.cpp#include"StdAfx.h"#include"manager.h"#include<iostream>#include<fstream>#include<string>#include<iomanip>usingnamespacestd;constintMAX=100;managerM[MAX];intstatictop1=0;manager::manager(void)()manager::-manager(void)()voidmanager::input()(cout<<"输入编号:"«endl;cin»number;cout<〈”输入姓名:"«endl;cin»name;cout<<"输入性别:"«endl;cin»sex;cout<<"输入部门:"«endl;cin»department;cout<<"输入级别:"«endl;cin»rank;cout«"输入固定月薪:"«endl;cin»salary;)voidmanager::output(){cout«number«"\t"«name«"\t"«sex«"\t"«department«"\t"<<rank«"\t"«salary«endl;}voidmanager::read()(top1=0;system("cls");ifstreaminflie("经理.tx「ios::in);if(!inflie)coutvぐ,打开失败!"<<endl;return;}inti=0;while(inflie»M[i].number»M[i].name»M[i].sex»M[i].department»M[i].rank»M[i].salary)(i++;topl=i;)inflie.closeO;}voidmanager::save()(ofstreamoutflie("经理.txド,ios::out);if(!outflie)(cout<〈"打开失败!"«endl;return;inti;for(i=0;i<topl;i++)outflie«M[i].number«"\t"«M[i].name«"\t"«M[i].sex«"\t"«M[i].department«"\t"«M[i].rank«"\t"«M[i].salary«endl;cout<<"保存成功!"<<endl;outflie.close();voidmanager::add()system("cls");read();if(topl>=MAX)coutvv"人员已满"<<endl;return;coutくぐ输入要添加的编号:"«endl;stringn;cin»n;for(inti=0;i<topl;i++)coutくぐ该编号的人员已存在"<<endl;return;)managerm;cout<ぐ请再次输入新添加人员的信息"<<endl;m.input();cout«"是否确认添加?1、是2、否"<<endl;inta;cin»a;if(a==l)(M[topl]=m;top1=top1+1;save();)else(cout<〈"放弃添加"<<endl;return;voidmanager::search()(system("cls");read();if(topl==0)(cout<<"当前系统没有储存记录!"<<endl;return;)intchoice;cout<ぐ请选择查找方式:1、按编号查找2、按姓名查找〇、退出"<<endl;cin»choice;switch(choice)((cout<ぐ请输入要查找的编号:"<<endl;stringnum;cin»num;for(inti=0;i<topl;i++)(if(M[i].number==num)(COUtVV"编号"《"\ピ<<"姓名"〈V"ゼ〈V"性别”〈ぐゼ〈ぐ部门"="ゝピ《"级别"月薪"cvendl;M[i].output();return;))cout«"查无此人!"«endl;};break;(cout<<"请输入要查找的姓名"<<endl;stringname;cin»name;for(inti=0;i<topl;i++)(if(M[i].name==name)cout<ぐ编号"<<"\t"«"姓名"<ぐY"<<"性别"《"ゼ〈ぐ部门"《"ゼ《"级别"VVr"〈ぐ‘月薪"《endl;M[i].output();))cout〈く"查无此人!"<<endl;};break;case0:break;default:cout«"输入错误!请输入〇〜3的数字"«endl;system("pause");search();break;voidmanager::show()(system("cls");read();if(topl==0)(cout〈〈"无数据!"«endl;return;cout«"编号"«"\t"«"姓名"《"ゝビ="性^|J"«,'\t"«"部门ゼ〈ぐ级别"(ぐゼ""月薪"<<endl;for(inti=0;i<topl;i++)M[i].output();)voidmanager::alter()(system("cls");read();if(topl==0){cout<("当前系统没有储存记录"<<endl;return;)stringnum;cout<<"请输入要修改的经理编号:"«endl;cin»num;for(inti=0;i<topl;i++)if(M[i].number-num)cout«"编号"〈ぐゼくぐ姓名”〈ぐゼくぐ性别ゼ〈ぐ部门"(ぐゼ""级别"<ぐ\ピ<〈"月薪"<<endl;M[i].output();cout<<"请选择修改范围:1、全部修改2、修改编号3、修改姓名4、修改性别"《endl;cout«" 5、修改部门6、修改级别7、修改月薪"«endl;cout«" 〇、退出修改"<<endl;intchoice;cin»choice;switch(choice)(case1:(cout<〈"输入修改后的编号:"«endl;stringn;cin»n;for(intj=0;j<topl;j++)if(n==M[j].number)coutくぐ该编号的人员已存在"<<endl;return;)cout<<”输入修改后的姓名:"<<endl;stringna;cin»na;coutくく"输入修改后的性别:"<<endl;strings;cin»s;coutくぐ输入修改后的部门:"<<endl;stringd;cin»d;cout<〈"输入修改后的级别:"<<endl;stringr;cin»r;cout<<"输入修改后的月薪:"<<endl;floatsa;cin»sa;否"<<endl;coutく〈"是否确认修改?1、是2否"<<endl;inta;cin»a;save();case2:"«endl;M[i].number=n;M[i].name=na;M[i].sex=s;M[i].department=d;M[i].rank=r;M[i].salary=sa;else};break;cout<<"放弃修改"《endl;return;cout«"请输入修改后的编号stringn;cin»n;for(inti=0;i<topl;i++)if(n==M[i].number)(coutくぐ该编号的人员已存在"<<endl;return;)cout<〈"是否确认修改?1>是2、否"vvendl;inta;cin»a;if(a==l)M[i].number=n;else(cout«"放弃修改"《endl;return;)save();};break;case3:coutくぐ请输入修改后的姓名

"«endl;stringna;cin»na;M[i].name=na;coutくぐ是否确认修改?1、是2、否"<<endl;inta;cin»a;if(a==l)M[i].name=na;else(coutvv"放弃修改"《endl;return;)save();};break;case4:(cout«"请输入修改后的性别"«endl;strings;

cin»s;M[i].sex=s;cout<<"是否确认修改?1、是2、否"<<endl;inta;cin»a;if(a==l)M[i].sex=s;else(cout«"放弃修改"《endl;return;)save();};break;case5:(cout«"请输入修改后的部门"«endl;stringd;cin»d;M[i].department=d;cout<<"是否确认修改?1、是2、否"<<endl;inta;cin»a;if(a==l)M[i].department=d;else(coutvv"放弃修改"《endl;return;)save();};break;case6:(cout«"请输入修改后级别"«endl;stringr;cin»r;M[i].rank=r;cout«"是否确认修改?1、是inta;cin»a;if(a==l)M[i].ranker;elsecout«"放弃修改"《endl;return;)save();};break;case7:(cout<<"请输入修改后的月薪"«endl;floatsa;cin»sa;M[i].salary=sa;cout«"是否确认修改?1、是2、否""endl;inta;cin»a;if(a==l)M[i].salary=sa;else(coutvv"放弃修改"《endl;return;)

save();

};break;case〇:cout<〈"退出修改"<<endl;return;break;default:cout«"无此选项!请输入〇〜7的数字"«endl;system("pause");break;)cout«"修改完成"vvendl;return;))cout<<"查无此人"<<endl;)voidmanager::del()system("cls");read();if(topl==0)(coutくぐ当前系统没有储存记录”<<endl;return;)intchoice;cout<ぐ请删除查找方式:1、按编号删除2、按姓名删除〇、退出"<<endl;cin»choice;switch(choice)(case1:(cout<<"请输入所要删除人员的编号:"«endl;stringnum;cin»num;for(inti=0;i<topl;i++)(if(M[i].number==num)cout«"编号"《"\t"〈ぐ'姓名"〈ぐヘビ〈ぐ’性别"《"ゼ〈ぐ部门"《"ゼ《"级别"VVr"〈ぐ‘月薪"《endl;M[i].output();cout«"是否确认删除?1、是2、否"«endl;intchoice;cin»choice;switch(choice)((for(intj=i;j<topl;j++)cout«"删除成功!"«endl;top1=top1-1;};save();break;case2:return;default:cout<〈"没有止匕选项!"«endl;}return;cout<<"无此人!"<<endl;};system("pause");del();break;(cout<ぐ请输入所要删除人员的姓名:"«endl;stringname;cin»name;for(inti=0;i<top1;i++){if(M[i].name==name)(coutv("编号"〈ぐ''ビ《"姓名"《"ゝピVC"性别"<<"ゼ《"部门"《"ゼ<<"级别"<<"ド<<"月薪"<<endl;M[i].output();cout<<"是否确认删除?1、是2、否"«endl;intchoice;cin»choice;switch(choice)(for(intj=i;j<topl;j++)M[j]=M|j+l];cout«"删除成功!"«endl;top1=top1-1;};save();break;case2:return;default:cout<〈"没有止匕选项!"«endl;))}return;coutくぐ‘无此人!”《endl;};break;case0:break;default:cout«"输入错误!请输入〇〜3的数字"«endl;system("pause");del();break;)save();)voidmanager::stat()(system("cls");read();intchoice;cout«"l>人数统计2、性别统计3、平均エ资4、最高工资5、最低工资〇、退出"<<endl;cout<<"请输入所要执行的编号:"<<endl;cin»choice;switch(choice)(case1:cout«"经理的人数为:"«topl«endl;system("pause");stat();break;(inta=0,b=0;stringY="男";stringX="女";for(inti=0;i<topl;i++)(if(M[i].sex==Y)a++;if(M[i].sex==X)

b++;cout<〈"男性人数:"«a«endl;coutくぐ女性人数:"《b«endl;);system("pause");stat();break;(floatave_salary=O;floatall_salary=O;for(inti=0;i<topl;i++)(all_salary=M[i].salary+all_salary;}ave_salary-all_salary/topl;cout<<"平均エ资:"<<ave_salary;);system("pause");stat();break;(floatmax_salary=O;for(inti=0;i<topl-l;i++)(if(M[i].salary>M[i+l].salary){max_salary=M[i].salary;M[i+l].salary=max_salary;}elsemax_salary=M[i+l].salary;)cout<〈"最咼エ资:"«max_salary;};system("pause");stat();break;(floatmin_salary=O;for(inti=0;i<topl-l;i++)(if(M[i].salary<M[i+l].salary)(min_salary=M[i].salary;M[i+1].salary=min_salary;}elsemin_salary=M[i+l],salary;)cout<<"最低工资:"«min_salary;);system("pause");stat();break;case0:break;default:cout«"无此选项!请输入〇〜5的数字"«endl;system("pause");stat();break;})3.3技术人员类的实现technician.h#include"employee.h"classtechnician:publicemployee(public:technician(void);-technician(void);voidadd();voidsearch();voidshow();voidalter();voiddel();voidstat();voidsave();voidread();voidinput();voidoutput();protected:floatwork_time;floattime_salary;};technician.cpp#include"StdAfx.h"#include"technician.h"#include<iostream>#include<fstream>#include<string>#include<iomanip>usingnamespacestd;constintMAX=100;technicianT[MAX];intstatictop2=0;technician::technician(void)technician::~technician(void)voidtechnician::input()(cout<<"请输入输入编号:"«endl;cin»number;coutくぐ请输入输入姓名:"<<endl;cin»name;cout<<"请输入输入性别:,'«endl;cin»sex;coutv("请输入输入部门:"«endl;cin»department;cout<<"请输入输入级别:"«endl;cin»rank;cout<<"请输入输入エ时:"<<endl;cin»work_time;coutくぐ请输入输入时薪:"«endl;cin»time_salary;salary=time_salary*work_time;voidtechnician::output(){cout«number«"\t"«name«"\t"«sex«"\t"«department«"\t"«rank«"\t"«work_time«"\t"«time_salary«"\t"«salary«endl;voidtechnician::read()(top2=0;system("cls");ifstreaminflie("技术人员.txピ,ios::in);if(!inflie)(cout«”打开失败!"<<endl;return;)inti=0;while(inflie»T[i].number»T[i].name»T[i].sex»T[i].department»T[i].rank»T[i].work_time»T[i].time_salary»T[i].salary)(i++;top2=i;)inflie.close();voidtechnician::save()ofstreamoutflie("技术人员.txビ,ios::out);if(!outflie)(coutvv"打开失败!"«endl;return;)inti;for(i=0;i<top2;i++)(outflie«T[i].number«"\t"«T[i].name«"\t"«T[i].sex«"\t"<<T[i].department«"\t"«T[i].rank«"\t"«T[i].work_time«"\t"«T[i].time_salary«"\t"«T[i].salary«endl;)cout<ぐ,保存成功!"«endl;outflie.close();)voidtechnician::add()(system("cls");read();if(top2>=MAX)cout«"人员已满”《endl;return;)cout<<"输入要添加的编号:"«endl;stringn;cin»n;for(inti=0;i<top2;i++)if(n==T[i].number)(coutくぐ’该编号的人员已存在"<<endl;return;)techniciant;cout<ぐ请再次输入新添加人员的信息,V<endl;t.input();cout<ぐ是否确认添加?1、是2、否"<<endl;inta;cin»a;if(a==l)T[top2]=t;top2=top2+1;save();}else(cout<<"放弃添加"<<endl;return;voidtechnician::search()(system("cls");read();if(top2==0)(coutくぐ当前系统没有储存记录!”<<endl;return;}intchoice;coutくぐ请选择查找方式:1、按编号查找2、按姓名查找〇、退出"《endl;cin»choice;switch(choice)((cout<<"请输入要查找的编号:"«endl;stringnum;cin»num;for(inti=0;i<top2;i++)(if(T[i].number==num)(COUtVV"编号"姓名"〈V"ゼ〈V"性别”《"ゼvv"部n"«,,\t"«"级别"<<"ゼ«"エ时"«"\t"«"时薪"<v"\t"«"月薪"《endl;T[i].output();return;)}cout<<"查无此人!"«endl;};break;coutくぐ请输入要查找的姓名,v<endl;stringname;cin»name;for(inti=0;i<top2;i++)(if(T[i].name==name)(cout«"编号"〈ぐ‘ゼVV"姓名"〈ぐゼVC”性别"〈ぐ’、ビ部n"«"\t"«"级别"〈ぐ'\ビ〈ぐ‘エ时"〈ぐへビ〈ぐ’时薪"〈〈"ゝビ〈〈"月薪"〈〈endl;T[i].output();return;))cout〈〈"查无此人!"«endl;};break;case0:break;default:cout«"输入错误!请输入〇〜3的数字"«endl;system("pause");search();break;voidtechnician::show()(system("cls");read();if(top2==0)(coutvv"无数据!"«endl;return;)cout«"编号"«"\t"«"姓名性SO"«,'\t"«"部门"«"\t"«"级另リ"《"、ビ〈ぐ‘工时"«"\t"«"时薪"«"\t"«"月薪"«endl;for(inti=0;i<top2;i++)T[i].output();)voidtechnician::alter()(system("cls");read();if(top2==0)coutくぐ当前系统没有储存记录"<<endl;return;)stringnum;cout«"请输入要修改的技术人员编号:"«endl;cin»num;for(inti=0;i<top2;i++)(if(T[i].number==num)(cout«"编号"<ぐヘビ<ぐ姓名"<ぐr”〈ぐ性别"«"\t"«"部n 级别"ゼ《"エ时"«"\t"«"时薪"〈ぐ’ゝビ《"月薪"vvendl;T[i].output();coutくぐ请选择修改范围:1、全部修改2、修改编号3、修改姓名4、修改性别"vvendl;cout«" 5、修改部门6、修改级别7、修改工时8、修改时薪"<<endl;cout«" 〇、退出修改"<<endl;intchoice;cin»choice;switch(choice)I(cout<〈"输入修改后的编号:"«endl;stringn;cin»n;for(intj=0;j<top2;j++)if(n==T[j].number)(cout«"该编号的人员已存在"<<endl;return;)cout<〈"输入修改后的姓名:"«endl;stringna;cin»na;coutcv"输入修改后的性别:"«endl;strings;cin»s;cout<〈"输入修改后的部门:"«endl;stringd;cin»d;cout<〈"输入修改后的级别:"«endl;stringr;cin»r;cout<<"输入修改后的エ时:"«endl;floatwt;cin»wt;coutく〈"输入修改后的エ时:"«endl;floatts;cin»ts;cout<〈"是否确认修改?1、是2、否"<<endl;inta;cin»a;if(a==l)T[i].number=n;T[i].name=na;T[i].sex=s;T[i].department=d;T[i].rank=r;T[i].work_time=wt;T[i].time_salary=ts;T[i].salary=wt*ts;else(coutw"放弃修改"<<endl;return;)save();};break;(cout«"请输入修改后的编号"«endl;stringn;cin»n;for(inti=0;i<top2;i++)

if(n==T[i].number)(coutくぐ该编号的人员已存在,Vvendl;return;

}cout<ぐ是否确认修改?1、是2、否"<<endl;inta;cin»a;if(a==l)T[i].number=n;else(coutv<"放弃修改"《endl;return;1save();i};break;case3:(cout«"请输入修改后的姓名"«endl;stringna;cin»na;T[i].name=na;cout«"是否确认修改?1、是

2、否""endl;inta;cin»a;if(a==l)T[i].name=na;else(cout""放弃修改""endl;return;)save();};break;case4:(cout<<"请输入修改后的性别"<<endl;strings;cin»s;T[i].sex=s;cout«"是否确认修改?1、是2、否""endl;inta;

cin»a;if(a==l)T[i].sex=s;else(cout<<"放弃修改"<<endl;return;)save();};break;case5:(cout«"请输入修改后的部门"«endl;stringd;cin»d;T[i].department=d;cout<<"是否确认修改?1、是2、否"<<endl;inta;cin»a;if(a==l)

T[i].department=d;else(coutw"放弃修改"<<endl;return;}save();};break;case6:{cout«"请输入修改后级别"«endl;stringr;cin»r;T[i].rank=r;cout<〈"是否确认修改?1、是2、否"く<endl;inta;cin»a;if(a—1)T[i].ranker;else

coutv〈"放弃修改"《endl;return;)save();};break;case7:(cout<<"请输入修改后的エ时"«endl;floatwt;cin»wt;T[i].work_time=wt;cout«"是否确认修改?1、是2、否"<<endl;inta;cin»a;if(a==l)(T[i].work_time=wt;T[i].salary=T[i].time_salary*wt;)

else(cout<〈"放弃修改"<<endl;return;)save();};break;case8:(cout«"请输入修改后的时薪"«endl;floatts;cin»ts;T[i].time_salary=ts;cout«"是否确认修改?1、是2、否"<<endl;inta;cin»a;if(a==l)T[i].time_salary=ts;T[i].salary=T[i].work_time*ts;)else(coutvv"放弃修改"《endl;return;)save();};break;case〇:cout<〈"退出修改"<<endl;return;break;default:cout«"无此选项!请输入〇〜8的数字"«endl;system("pause");break;)cout«"修改完成"vvendl;return;))cout<<"查无此人"<<endl;)voidtechnician::del()system("cls");read();if(top2==0)(coutくぐ当前系统没有储存记录”<<endl;return;)intchoice;cout<ぐ请删除查找方式:1、按编号删除2、按姓名删除〇、退出"<<endl;cin»choice;switch(choice)(case1:(cout<<"请输入所要删除人员的编号:"«endl;stringnum;cin»num;for(inti=0;i<top2;i++)(if(T[i].number==num)cout«"编号"《"\t"〈ぐ'姓名"〈ぐヘビ〈ぐ’性别"《"'ビ《"部n"«"\t"«"级别"〈ぐゼ""エ时"«"\t"«"时薪"«"ゼ<<"月薪"《endl;T[i].output();coutくぐ是否确认删除?1、是2、否"«endl;intchoice;cin»choice;switch(choice)((for(intj=i;j<top2;j++)TU]=T[j+l];cout«"册リ除成功!"«endl;top2=top2-1;};save();break;case2:return;default:cout<〈"没有止匕选项!"«endl;}return;cout<<"无此人!"<<endl;};system("pause");del();break;(cout<ぐ请输入所要删除人员的姓名:"«endl;stringname;cin»name;for(inti=0;i<top2;i++)(if(T[i].name==name)(cout«"编号"《"ゝビ姓名"〈ぐヘビ性别”〈ぐヽビ<ぐ’部n"«,'\ビ《"级别"<<"ゼ«"エ时"<<"ゼくぐ,时薪"<ぐ'\ビ<<"月薪"《endl;T[i].output();cout«"是否确认删除?1、是2、否"«endl;intchoice;cin»choice;switch(choice)case1:for(intj=i;j<top2;j++)T[j]=TU+l];cout«"删除成功!"«endl;top2=top2-1;};save();break;case2:break;default:cout<〈”没有止匕选项!"«endl;))}return;cout<<"无此人!"<<endl;};system("pause");del();break;case0:break;default:cout«"输入错误!请输入〇〜3的数字"«endl;system("pause");del();break;)save();voidtechnician::stat()system("cls");read();intchoice;cout«"l>人数统计2、性别统计3、平均エ资4、最高工资5、最低工资〇、退出"<<endl;cout<<"请输入所要执行的编号:"«endl;cin»choice;switch(choice)(case1:cout«"技术人员的人数为:"«top2«endl;system("pause");stat();break;(inta=0,b=0;stringY="男";stringX="女";for(inti=0;i<top2;i++)(if(T[i].sex==Y)a++;if(T[i].sex==X)

b++;coutくぐ男性人数:"<<a«endl;cout<<"女性人数:"《b«endl;};system("pause");stat();break;(floatave_salary=O;floatall_salary=O;for(inti=0;i<top2;i++)(all_salary=T[i].salary+all_salary;)ave_salary=all_salary/top2;cout<〈"平均エ资:"«ave_salary;};system("pause");stat();break;(floatmax_salary=O;for(inti=0;i<top2-l;i++)if(T[i].salary>T[i+l].salary)

max_salary=T[i].salary;T[i+1].salary=max_salary;}elsemax_salary=T[i+1].salary;)cout<<"最高工资:"«max_salary;case5:case5:floatmin_salary=O;for(inti=0;i<top2-l;i++)(if(T[i].salary<T[i+l].salary)(min_salary=T[i].salary;T[i+l].salary=min_salary;)elsemin_sa!ary=T[i+1].salary;)cout<<”最低工资:"〈〈min_salary;};system("pause");stat();break;case0:break;default:cout«"无此选项!请输入〇〜5的数字"«endl;system("pause");stat();break;})3.4销售人员类的实现salesman.h#include"employee.h"classsalesman:virtualpublicemployee(public:salesman(void);-salesman(void);voidadd();voidsearch();voidshow();voidalter();voiddel();voidstat();voidsave();voidread();voidinput();voidoutput();protected:floatsale;floatrate;);salesman.cpp#include"StdAfx.h"#include"salesman.h"#include<iostream>#include<fstream>#include<string>#include<iomanip>usingnamespacestd;constintMAX=100;salesmanS[MAX];intstatictop3=0;salesman::salesman(void)salesman::-salesman(void)()voidsalesman::input()(cout<<"输入编号:"«endl;cin»number;cout«"输入姓名:"«endl;cin»name;coutv(”输入性别:"«endl;cin»sex;cout<<"输入部门:"«endl;cin»department;cout<<"输入级别:"«endl;cin»rank;coutくぐ请输入输入其当月销售额:"«endl;cin»sale;coutくぐ请以小数形式输入提成率:"«endl;cin»rate;salary=sale*rate;voidsalesman::output()cout«number«"\t"«name«"\t"«sex«"\t"«department«"\t"<<rank«"\t"«sale<<""«rate«""«salary«endl;voidsalesman::read()top3=0;system("cls");ifstreaminflie("销售人员.txf',ios::in);coutvv"打开失败!"«endl;return;inti=0;while(inflie»S[i].number»S[i].name»S[i].sex»S[i].department»S[i].rank»S[i].sale»S[i].rate»S[i].salary)i++;top3=i;inflie.close();)voidsalesman::save()(ofstreamoutflie("销售人员.txt",ios::out);if(!outf

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论