欢迎来到天天文库
浏览记录
ID:41943437
大小:95.00 KB
页数:6页
时间:2019-09-05
《公司人员管理系统C程序》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、公司人员管理系统实现对公司人员按姓名或者•编号显示、查找、增加、删除和保存各类人员信息的操作。具体要求及应捉交的材料某小型公司,主要冇四类人员:经理、兼职技术人员、销售经理和兼职推销员。现在,需要存储这些人员的姓名、编号、级別、当月薪水,计算月薪总额并显示全部信息。要求:其中,人员编号在生成人员信息时同时生成,每输入一个人员信息编号顺序加4。程序对所有人员有捉升级别的功能薪的计算方法是:经理京周定月薪,兼职技术人员按工作小时数领取月薪,兼职推销员的报酬按该推销员当月销售额提成,销售经理既拿固定月薪也领取销售提成。能按姓名或者编号显示、杳找、增加、删除和保存各类人员的倍息在基本
2、要求达到后,可设计出比较友好的界面(如下拉菜单),也可用VC++Classwizard设计(选作)。#include#includeinclude#ineludeconstintMaxr=100;classEmployee〃职l淡{inttag;//删除标记intno;//职工编号charname[20];charzw[20];//职工姓名intsalary;//职丁工资public:Employee(){}char*getname(){returnname;}〃获取名字intgettag
3、(){returntag;}//获取标记intgetno(){returnno;}//获取编号intgetsalary(){returnsalary;}voidsetzw(charq[])//设置名字{strcpy(zw,q);}voidsetname(charna[])//设置名字{strcpy(name,na);}voidgetsalary(intsa){salary=sa;}voiddelna(){tag=1;}//删除voidaddemp(intn,intsa.char*na,char*q)〃增加{tag=O;no二n;salary=sa;strcpy(name,na
4、);strcpy(zw,q);}voiddisp()//显示职T•信息{cout«"
5、M«setw(10)«no<<"
6、"«setw(10)«name«"
7、,,<8、,,«setw(10)«zw«"«endl;cout«"9、1111"«endl;}};classDatabase//职工数据类{inttop;Employeeread[Maxr];public:Database。//将职匸信息从employee.txt读取到read[]屮{Employees;top=-1;fstreamfile(,,employee.txt",ios::in10、);while(1){file.read((char冷&s,sizeof(s));if(!file)break;top++;read[top]=s;}file.close();}voidclear()〃删除所有{top=-1;}intaddemp(intn,intsa.char*na,char*q)//增加职工{Employee*p=query(n);if(p==NULL)top++;read[top].addemp(n,sa,na,q);return1;}return0;}Employee*query(intempid){for(inti=0;i<=top;i++)if(r11、ead[i].getno()==empid&&read[i].gettag()==0)return&read[i];returnNULL;}Employee*query1(charempna[20]){for(inti=0;i<=top;i++)if((read[i].getname()==empna)&&read[i].gettag()==0)return&read[i];returnNULL;}voiddisp()//职工信息显示{for(inti=0;i<=top;i++)read[i].disp();}voidempdata();~Database()//将read[12、]屮的信息读如到employee.txt屮{fstreamfile(”employee・txt:ios::out);for(inti=0;i<=top;i++)if(read[i].gettag()==0)file.write((char*)&read[i],sizeof(read[i]));file.close();}};voidDatabase::empdata()//职工维护{intchoice=1;intm=1;intb=1;charrname[20];intempid;intempsa;cha
8、,,«setw(10)«zw«"«endl;cout«"
9、1111"«endl;}};classDatabase//职工数据类{inttop;Employeeread[Maxr];public:Database。//将职匸信息从employee.txt读取到read[]屮{Employees;top=-1;fstreamfile(,,employee.txt",ios::in
10、);while(1){file.read((char冷&s,sizeof(s));if(!file)break;top++;read[top]=s;}file.close();}voidclear()〃删除所有{top=-1;}intaddemp(intn,intsa.char*na,char*q)//增加职工{Employee*p=query(n);if(p==NULL)top++;read[top].addemp(n,sa,na,q);return1;}return0;}Employee*query(intempid){for(inti=0;i<=top;i++)if(r
11、ead[i].getno()==empid&&read[i].gettag()==0)return&read[i];returnNULL;}Employee*query1(charempna[20]){for(inti=0;i<=top;i++)if((read[i].getname()==empna)&&read[i].gettag()==0)return&read[i];returnNULL;}voiddisp()//职工信息显示{for(inti=0;i<=top;i++)read[i].disp();}voidempdata();~Database()//将read[
12、]屮的信息读如到employee.txt屮{fstreamfile(”employee・txt:ios::out);for(inti=0;i<=top;i++)if(read[i].gettag()==0)file.write((char*)&read[i],sizeof(read[i]));file.close();}};voidDatabase::empdata()//职工维护{intchoice=1;intm=1;intb=1;charrname[20];intempid;intempsa;cha
此文档下载收益归作者所有