版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、下栽可编辑.专业,整理.专业,整理.课程设计报告课程名称一面向对象程序设计课题名称公司人用管理系统2011年12月28日湖南工程学院课程设计任务书课程名称而向对象程序设计课题公司人员管理系统专业班级学生姓名学号指导老师一审批F我町编辑F我町编辑专业,整理.专业,整理.任务书下达日期2011年11月15日任务完成日期2011年12月28日下栽可编辑下栽可编辑下栽町编辑.专业,整理.专业,整理.专业,整理.一、设计内容与设计要求课程设计目的:面向对象程序设计课程设讣是集中实践性环节之一,是学习完面向对象程序设计课程后进行的一次全面的综合练习。要求学主达到熟练掌握C+语言的基本知识和技能;歴本掌握面
2、向对象程序设讣的思想和方法:能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题,从而提高动手编程解决实际问题的能力。2.瞄题目1)公司库存管理系统2)高校学籍管理系统3)高校工资管理系统4)高校人事管理系统5)通讯录程序设讣6)学生成绩管理系统7)图书管理系统8)文本编辑器的设计与实现9)学生考勤管理系统10)公司人员管理系统3设计要求:(1)设计课题题日:毎位同学根据自己学号除以io所得的余數加1选择相应题号的课题。随意换题者不记成绩。(2)根据自己对应的课题完成以下主要工作:完成系统需求分析:包括系统设计目的与意义;系统功能需求(系统流程图);输入输出的要求。完成系统总体设计:包
3、括系统功能分析;系统功能模块划分与设计(系统功能模块图1完成系统详细设讣:包括数据库需求分析;数据库概念结构设计(E-R图);数据库逻辑结构设讣;类层次图;界面设计与各功能模块实现。系统调试:调试出现的上要问题,编译语法错误及修改,重点是运行逻辑问题修改和调整。使用说明书及编程体会:说明如何使用你编耳的程序,详细列岀毎一步的操作步骤。关键源程序(带注释)按规定格式完成课程设计报告,将其打印稿(A4纸)上交给老师存档。不得抄袭他人程序、课程设计报告,毎个人应体现自己的个性设讣。下载可编辑下载可编辑下栽町编辑专业,整理.专业,整理.专业,整理.二、进度安排第17周星期一008:008:星期/:。0
4、012:8:星期四8:0012:第18周星期一W14:30星期二18:300012:星期三8:0012:00三、参考书籍1XC+程序设汁课程设计刘振安编著TP312C563清华大学岀版社7-5084-2007-17-302-05968-3东南大学出版社C+Builder和Delphi课程设讣与系统开发案例伍俊良7-302-06072-XVisualC+课程设计案例精编严华峰中国水利水电出版社2004VisualC+课程设计与系统开发案例伍俊良清华大学出版社2002VisualC+语言课程设计:案例精选与编程指导陈淸华朱红7-81089-275-420036.VisualC+课程设计案例精编中国
5、水利水电出版社7-5084-1004-120027.数据结构课程设计案例精编:用C/C+描述李建学李光元吴春芳清华大学出版社7-302-14536-92007(编程平台不限,vc+,C+Builder等等。)课题5:公司人员管理系统(_X课程设计题目:公司人员管理系统(-1目的与要求:1、目的:(1)要求学生达到熟练掌握C+语言的基本知识和技能;(2)基本掌握面向对象程序设讣的丛本思路和方法;(3)能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题。2、基本要求:(1)要求利用面向对象的方法以及C+的编程思想来完成系统的设计;(2)要求在设计的过程中,建立清晰的类层次;(3)在系统中
6、至少要定义四个类,毎个类中要有各自的属性和方法;(4)在系统的设计中,至少要用到面向对象的一种机制。3、创新要求:在丛本要求达到后,可进行创新设计,如根据查找结果进行修改的功能。4、写出设计说明书(三X设计方法和基本原理:1、问题描述(功能要求):公司人员管理系统实现对公司人员按姓名或者编号显示、查找、增加、删除和保存各类人员信息的操作。某小型公司,主要有四类人员:经理、兼职技术人员、销售经理和兼职推销员。现在,需要存储这些人员的姓名、编号、级别、当月薪水,计算月薪总额并显示全部信息。人员编号在生成人员信息时同时生成,毎输入一个人员信息编号顺序加lo程序对所有人员有提升级别的功能。薪金的计算方
7、法是:经理拿固定月薪,兼职技术人员按工作小时数领取月薪,兼职推销员的报酬按该推销员当月销售额提成,销售经理既拿固定月薪也领取销售提成。能按姓名或者编号显示、查找、增加、删除和保存各类人员的信息。在基本要求达到后,可设计出比较友好的界面(如下拉菜单),也可用VC+Classwizard设计(选作12、问题的解决方案:根据系统功能要求,可以将问题解决分为以下步骤:下栽可编辑下栽可编辑.专业,整理.专业,整理.(1)应用系统分析,建立该系统的功能模块框图以及界面的组织和设计:(2)分析系统中的各个实体及它们之间的关系包括属性和行为;(3)根据问题描述,设计系统的类层次;(4)完成类层次中各个类的描述
8、(包括属性和方法);(5)完成类中各个成员函数的定义:(6)完成系统的应用模块;(7)功能调试;(8)完成系统总结报告以及系统使用说明书。F我町编输F我町编输.专业,祭理.专业,祭理.目录TOC o 1-5 h z HYPERLINK l bookmark22 o Current Document L系统需求分析1 HYPERLINK l bookmark28 o Current Document 总体设计3详细设计5 HYPERLINK l bookmark40 o Current Document 系统调试11 HYPERLINK l bookmark60 o Current Docume
9、nt 结果分析18总、结20附录21下栽可编辑下栽可编辑下载町编辑.专业,整理.专业,整理.专业,整理.系统需求分析1.1问题描述公司人员管理系统实现对公司人员按姓名或者编号显示、查找、增加、删除和保存各类人员信息的操作。某小型公司,主要有四类人员:经理、兼职技术人员、销售经理和兼职推销员。现在,需要存储这些人员的姓名、编号、级别、当月薪水,计算月薪总额并显示全部信息。人员编号在生成人员信息时同时生成,每输入一个人员信息编号顺序加lo程序对所有人员有提升级别的功能。薪金的计算方法是:经理拿固定月薪,兼职技术人员按工作小时数领取月薪,兼职推销员的报酬按该推销员当月销售额提成,销售经理既拿固定月薪
10、也领取销售提成。能按姓名或者编号显示、查找、增加、删除和保存各类人员的信息。在基本要求达到后,可设计岀比较友好的界面(如下拉菜单),也可用VC+Classwizard设计(选作)1.2功能分析o査询功能:voidQuery()。删除功能:voidDeleteO。添加功能:voidAdd()。修改功能:voidModifyOo保存功能:voidSaveOo数据装入:voidLoad()1.2.1查询功能函数原型:voidQuery()说明:查询一个职员的垒本信息,包括职工号,姓名,性别,所在部门,职务,薪水。1.2.2删除功能函数原型:voidDeleteO说明:能够对一个职员的信息进行删除,按
11、职工号+姓名进行删除。1.2.3添加功能函数原型:voidAdd()说明:添加一个职员的基本信息,包括职工号,姓名,性别,所在部门,职务,薪水。12.4修改功能函数原型:voidModifyO说明:对满足条件的职员的信息进行修改,可以修改职工所在部门、职务、工资。1.2.5保存功能函数原型:voidSave()说明:保存想要保存的人员信息。1.2.6数据装入函数原型:voidLoad()说明:将保存在磁盘的数据装入到内存中,以便对数据的再次管理和操作。下栽可编辑下栽可编辑总体设计2.1系统总体框架系统总体框架使用面向对象的程设计思想逬行分析,整个系统涉及两大类信息和操作,公司,人员。所以系统主
12、要涉及两个大类:公司类Company.人员类Person。系统的总体框架就是公司类,人员类的定义;主函数中定义一个公司对象,循环显示主菜单并根据用户选择调用公司类的相应方法(成员函数)。公司类Company:考虑系统操作的人员信息的数量具有不确定性,所以考虑使用链表保存、处理人员信息。公司类包含:所有人员信息的一个不带头结点的链表(作为数据成员)及可以对人员信息进行增,删,改,查询,数据存盘等操作的相关模块(Add,Delete,Modify,Query,Set)作为成员函数。人员类Person:所有人员都具有的公共信息及操作可以使用人员类进行描述。由于系统具有4类人员且4类人员数据,操作有所
13、不同,如销售员包含销售额,而技专业,樱下栽町编辑下栽町编辑理.下栽可编辑下栽可编辑下栽町编辑.专业,整理.专业,整理.专业,整理.术人员包含工作小时数且计算工资的方法不同,所以应当为4类人员创建相应的Person类的派生类。为了使公司类可以方便处理人员信息,可以考虑将公司类确定为人员类的友元类或者人员类提供公共的方法以便公司类进行操作。为了公司类可以用共同方法操作人员类,可以将人员类的方法确定为虚函数。2.2结构框图2.3类的层次图People类其中:(1)Person类有N。-人员编号,Name-人员姓名,Duty-人员类别,Earning-工资,next-指向下一个人员的指针;Person
14、类的CalcSalaryO,OutputO定义为纯虚函数分别表示要计算人员工资和输出人员信息,由于定义纯虚函数,所以Person是抽象类,具体讣算工资,输出人员信息111派生类完成。(2)各个派生的类,包含本类对象特有的数据,Sales::Amount-销售员销售额,SalesManagen:Amount-销售经理的总销售额(系统统计各个销售员销售额得到销售经理的总销售额),Technician:!-技术人员工作小时数。CompanyPersorWorker,CompanyOCompanyO.AddO.DeleteO.ModifyO,Query(),Set(),Save(),Load()其中:
15、(DWorker就是人员链表。Add。,Delete。,Modify(),Query(),Set(),Saveo,Load()分别表示系统各个功能模块:增加人员,删除人员,修改人员,查找人员,基本数据的设置,数据存盘,数据装入。下栽可编辑下栽可编辑专业,整理.专业,整理.详细设计3.1.程序的运行步骤及函数的实专)主函数流程%“応11016I0%2p+下栽可编辑下栽可编辑专业,整理.专业,整理.Company::Add()开始ID号增1/输入南位/(3)Company:Delete()开始/输入员工ID/査找要删除的结点链表删除员工结点提示未找到并返回(4)Company::Modify下栽町
16、编辑下栽町编辑专业,整理.专业,整理.(5)Company:Query()下栽可编辑下栽可编辑专业,整理.专业,整理.下栽可编辑下栽可编辑一专业整理.专业,整理.(6)Company:Save()Ooad1ny%YIA%bleAuAilEaeEOeyY;10OlA%pae沁y%Y10OlA%f)(7)Company:Load()下栽町编辑下栽町编辑下栽可编辑专业,整理.专业,整理.专业,整理.系统调试4.1界面的显示,选择功能项G*C:D()CUIEHTSANDSETTINGSHHIEFA0RITESDebu2ll.ex人员和基础数据己经裝入.公可人员管理系统数功系餐出图4.14.2最开始先增
17、加人员1)增加经理ANDSETTIRGSUiNIEXFAVORITESUkbueXlk-1項选择功能项.输入17:1k拿新増员工榊灘乙陟V经理2平色经理3肖售员4水术员:1隔入姓名仪健否保存数据(Y/NLY如存人员和基础数据.是否继续?【Y/NJ:保存人员和基础数据己经完成.图4.2.12)增加销售经理ANDSETTIHCSHHIEFAVORlTESIkbu011公可人员管理系统謂m择功能项输入1?:】-新增员工一-经理2瑚售经理卜销皆员4-技术员:2匕入姓名:B匚月個售额:19000当否保存数拥Y/H|Y禄存人加I心讹数裾己经窝图4.2.23)增加技术人员C:D001IEBTSAIDSKTT
18、IVCSIDITEFAVOKITE!rU)ebuc11.raoe一一一二二1234567公司人员青碍卒统请选择功能项.1-7:10?衢右竝2-他垃理3韦善恥技木员川!H箱侵20理人人人人馮修壹矗iH下栽町编辑下栽町编辑专业,整理.专业,整理.4.4如果能査找到就说明增加成功,然后在进行修改操作丨口AMDSElTIRGSniIEFAV()RITFDebugil.exe,公可人员管理系统一01余坟号U占増删修査摄退:项.输入A7:3m:2HIB钳售经理100002850寧樓鸟一经理2-雄经理3铜吿员4-技术员:1八燃名:B改成功?否保存数据Y/NLY或”C:DOCniEHTSAMDSETTnrcS
19、HJnFAFAVORITESDebugll.exe,公可人员言理系沆项戈咎卜我可维辑图4.44.5修改之后再查找这个人员,看是否修改成功。.专业整理.专业整理.图4.54.6确定修改成功后再进行删除人员C:DOCUIEJnSABDSErTIKSIOIIEFAVORITESDftbuc11.人人人人敦功耳_1234587$选择功能项.統心?:2畴为工-D:2图4.64.7确定是否删除成功人zJ1147卜我可维辑卜我可维辑4.8确定删除Z后再进行保存或*C:DOniEBTSAMDSETTnKSHHIEtAMORITESU)ebugMl.exe,公司人员管理系统一吉选择功能项.输入17:6呆存人员和
20、基础数据.是否继续?tY/N:Y图4.84.9对数据进行修改林公可人躺理蔡2无屮林公可人躺理蔡2无屮UlvWAKSisrascffiJJff(so;CJ:6000埋换定甬繭(2旳犷3廉卅決成VSh9$处小时匸资I2IK元/小时】:3佃图494.10看一下修改后的效果人人人人徴123456图4.104.11修改正确,整个系统无误,退出系统专盘整理.下栽可编辑下栽可编辑下栽町编辑.专业,整理.专业,整理.专业整理.CC:DOCniEBTSAHDSETnHGSHHIEAVORITESDebugll.es导选择功能项输入I-?-?rcssanykeytocontinue.图4.11结果分析本系统独特的
21、设计两个类的设计1.1Company类有数据成员员工,这个类的主要功能是对功能模块的实现,可以设计Add。,Delete。,Modify。,Query。,Set。,Save。,Load。函数对系统功能需求的实现。查询功能voidQueryO查询一个职员的基本信息,包括职工号,姓名,性别,所在部门,职务,薪水。删除功能voidDeleteO能够对一个职员的信息进行删除,按职工号+姓名进行删除。添加功能voidAdd()添加一个职员的基本信息,包括职工号,姓名,性别,所在部门,职务,薪水。修改功能voidModifyO对满足条件的职员的信息进行修改,可以修改职工所在部门、职务、工资。保存功能voi
22、dSaveQ保存想要保存的人员信息。数据装入voidLoadO将保存在磁盘的数据装入到内存中,以便对数据的再次管理和操作。2People类有数据成员姓名,编号,职务,月总工资,还有两个纯虚函数,纯虚数不给出实现,在People类的派生类中再给出两个纯虚函数的相应的实现,一个纯虚函数是virtualvoidCalcSalary()=0;实现对毎个人员工资的计算,另一个就是virtualvoidOutput0二0;实现对毎个人员的具体信息的输ill。这个设计是一个壳点。链表的设计,使用链表可以动态的增加人员,而不受内存的限制,先定义一个People类的链表头指针,再在以后毎增加的人员设置为一个节点
23、然后再把节电连接到头指针就实现了人员的增加。界面的设计,毎对一个具体的操作进行完之后,利用一个return;就可以返回主函数,在进行下一步操作,这是个很好的操作。二.本系统不足之处我设计的思路是由People类派生出四个类,Manager类,Sales类,SalesManager类,和Technician类。但也可以用Manager类和Sales类共同派生出SalesManager类,这样就更接近我们学习的面向对象的设计的思路,这是一个不足之处。本系统的删除功能不是很完善,问题就是毎当删除一个人员的时候,这个人员的所有信息都被删除了,包括人员的编号,编号一旦删除了就找不回了,也就是说删除了一号
24、,这个系统就没有了一号,这是一个不足之处。其他的还算比较好。下栽可编辑下栽可编辑下栽可编辑.专业,整理.专业,整理.6.总结这次课程设计所设讣的公司员工管理系统(CEMS)是一个小型的人事信息管理系统,该系统实现了职工信息的添加、删除、修改、显示、查询等功能,并且运用了文件操作技术,可以实现数据的永久性保存。通过这次课程设计,我拓宽了知识面,锻炼了能力,综合素质得到较大提高。运用学习成果,把课堂上学到的系统化的理论知识,尝试性地应用于实际设汁工作,并从理论的高度对设计工作的现代化提出一些有针对性的建议和设想。检验学习成果,看一看课堂学习与实际工作到底有多大距离,并通过综合分析,找出学习中存在的
25、不足,以便为完善学习计划,改变学习内容与方法提供实践依据。对我们讣算机专业的本科主来说,实际能力的培养至关重要,而这种实际能力的培养单靠课堂教学是远远不够的,必须从课堂走向实跣这也是一次预演和准备毕业设计工伍通过课程设计,让我们找出自身状况与实际需要的差距,芥在以后的学习期间及时补充相关知识,为求职与正式工作做好充分的知识、能力准备,从而缩短从校园走向社会的心理转型期。经过两周的C+课程实践,我对C+语言设计有了一个更深,更全面的了解,尤其体会到C+面向对象操作对简化程序的重要作用.下面是我的几点体会:刚拿到课题时,我一脸的茫然,看到如此庞大的工程,不知如何下手.这个工资管理系统中职工子信息竟
26、然包15条,以前从来没有遇到过如此多的变量.和同学讨论很久好,我发现其实可以化繁为简的,信息15条不一定全都要,因为其中本身就有重复的.所以做任何事情都必须要开动脑筋,积极思考,有时还要学会化繁为简.在编程时条理清晰是至关重要的.主函数,函数,成员函数之间的层次关系,调用关系一定要有一个全面的把握,尤其要体会类的封装.专业,整理.性.另外很重要的一点就是一定要对链表的五种操作熟练的掌握.在编译,链接,调试的过程中一定要有耐心因为一个程序中会有很多小的错误,甚至有的问题要几个小时才能解决.遇到问题,一定要全面分析,有时候还要向同学请教.总得来说编程时极需要耐心的.C+课程设计实践为我们提供了一个
27、综合运用所学知识,解决实际问题的平台,增强了我们实践动手的能力和工程实践能力,并且锻炼和培养了我们的自学能力,让我们对C+有了一个更全面的了解。7附录源程序清单:ftincludeftincludeftincludeftincludeftinclude全局数据,对象doubleManagerSalary=5000;/经理固定月嶄doubleSalesManagerSalary=2000;”销售经理固定月赫doubleSalesManagerPercent=0.5;销售经理提成doubleSalesPercent=5;/tfi售人员提成doubleWagePerHour=20;”技术人员小时工资
28、intID;员工标识(要保证唯一)classPerson员工类下栽町编辑下栽町编辑专业,整理.专业,整理.protected:intNo;编号charName20;/姓名intDuty;/岗位doubleEarning;“q攵入Person*next;publicPerson(charID,char*Name,intDuty)this-Duty二Duty;strcpy(this-Name,Name);this-No二ID;virtualvoidCalcSalary()=0;virtualvoidOutput()=0;friendclassCompany;classManagenpublicPe
29、rson/经理类publicManager(charID,char*Name,intDuty):Person(ID,Name,Duty)voidCalcSalaryOEarning=ManagerSalary;voidOutput()CalcSalaryO;coutNoNameWt经理WtEarningAmounts二Amounts;voidSetAmounts(doubles)Amounts=s;doubleGetAmountsOreturnAmounts;下栽町编辑下栽町编辑下栽町编辑专业,整理.专业,整理.专业,整理.voidCalcSalaryOEarning=SalesManager
30、Salary+Amounts*SalesManagerPercent/100;voidOutput()(CalcSalaryO;coutNoNameWt销售经SWt/zAmounts,Wtz/Earningt=T;doubleGetT()returnt;voidSetTfdoubleT)this-t二T;voidCalcSalaryO(Earning=WagePerHour*t;voidOutput()(CalcSalaryO;coutNo,Wt,Name,Wt技术员,Earningendl;classSales:publicPerson销售员类下栽可编辑下栽可编辑下栽町编辑专业整理.专业整理
31、.专业,整理.private:doubleAmount;publicSales(charID,char*NameJntDuty,doubleAmount):Person(ID,Name,Duty)this-Amount=Amount;doubleGetAmount()returnAmount;voidSetAmount(doubleAmount)this-Amount=Amount;voidCalcSalaryOEarning=SalesPercent/100*Amount;voidOutputO(CalcSalaryO;EarningcoutNo,Wt,Name,Wt俏皆员Wtz,Amoun
32、tz,Wf,zendl;;classCompany公可类(private:PersonWorker;员工表publicCompanyO(Worker=0;Load();-Company。Person*p;p二Workenwhile(p)下栽可编辑下栽可编辑下栽可编辑专业,整理.专业,整理.专业,整理.p二p-next;deleteWorker:Worker=p;Worker=0;voidAdd();増加人员voidDeleteQ;“删除人员voidModify。;修改人员voidQueryO;査ifu人员voidSeto:/设置基本数拯voidSave();/数据存盘(包括基础数据,人员数据)
33、voidLoadQ;/数据的装入voidCompany:Add、/増加1人员Person*p;/新结点指针intDuty;charName20;doubleAmount,Amounts,T;coutWn*新增员ID+;/,/输入员工信息cout输入岗位(1-经理2销售经理3销售员4技术员V:cinDuty;coutF入姓名cinName;if(Duty=2)coutAmounts;if(Duty=3)(coutAmount:elseif(Duty二二4)下栽町编辑下栽可编辑专业,整理.专业,整理.coutnext二0;“员工结点加入链表if(Worker)/若已经存在结点Person*p2:p
34、2二Workerwhile(p2-next)/査找尾结点(p2二p2-next;p2-next=p;/连接elseR若不存在结点(表空Worker二p;“连接数据的保存coutch;if(ch=Y)(SaveQ:voidCompany:DeleteO/删除人员intNo;cout,Wn*AM除员工*Wn;coutID:;cinNo;査找要删除的结点Person*pl,*p2;pl=Worker;while(pl)if(Pl-No=No)break;else(P2二pl;pl=pl-next;删除结点if(pl!=NULL)/若找到结点,则删除(if(pl二二Worker)“若要删除的结点是第一
35、个结点Worker二pl-next;deletepl:else若要删除的结点是后续结点p2-next二pl-next;deletepl:下栽可编辑下栽可编辑专业,整理.专业,整理.coutz,找到并删除WrT;else未找到结点(cout未找到!Wn;charch;cout一按任总键返回菜单J:cinch;if(ch!=W)(return;voidCompany:Modify。修改人员函数的实现(intNo,Duty;charName20;doubleAmount,Amounts,!;coutWn*修改员工*Wn;coutNo;查找要修改的结点Person*plf*p2;pl=Worker;w
36、hile(pl)(if(Pl-No=No)break;elseP2=PLpl=pl-next:修改结点if(pl!=NULL)若找到结点charch;plOutputo;cinDuty;cout,/调整岗位(1-经理2销售经理3销售员4技术员):if(pl-Duty!=Duty)/若岗位发生变动下栽可编辑下栽可编辑.专业整理.专业整理.修改其它数据coutName;if(Duty=2)cout”本月销售额:;cinAmounts;if(Duty=3)(cout-本月销售额:;cinAmount:elseif(Duty二二4)coutH本月工作小时数(0-160):cinT;创建新员工结点Per
37、son*p3;switch(Duty)F栽可编辑F栽可编辑casebreak;1:p3二newManager(pl-No,Name,Duty);case2:p3=newSalesManager(pl-No,NamefDuty,Amounts);break;case3:p3二newSales(pl-No,Name,Duty,Amount);break;case4:p3二newTechnician(pl-No,Name,Duty,T);break;员工结点替换到链表p3-next二pl-next;if(pl二二Worker)若要替换的结点是第一个结点Worker二p3;else若要删除的结点是后续
38、结点p2-next二p3;删除原来的员工结点deletepl:else若岗位没有变动cout输入姓名:;cinplName;if(Duty=2)专业,整理下栽可编辑下栽可编辑下栽町编辑.专业,整理.专业,整理.专业,整理.*)PD-coutAmounts:(SalesManagerSetAmounts(Amounts);if(Duty=3)coutSetAmount(Amount);elseif(Duty二二4)coutT;(Technician*)pl)-SetT(T);cout修改成功!Wn;cout,z是否保存数据Y/Ncinch;if(ch二二Y)SaveO;else未找到结点cout
39、ch;if(ch!二WO)(return;voidCompany:QueryO(inti;Person*pl,*p2;pl=Worker;if(pl)(cout-清输入要查找的人的编号:;cini;while(pl)(if(pl-No=i)(break;else(p2=pl;pl二pl-next;if(pl!二NULL)(if(pl-Duty二二1)(cout,z编号姓名pl-Output。辻(pl-Duty=2)cout,/编号姓名pl-Outputo;I职位月总工资z,endl;职位月销售量月总工资Duty二二3)cout,/编号姓名pl-Output。下栽町编辑下栽町编辑下栽町编辑.专业
40、,整理.专业,整理.专业,整理.if(pl-Duty二二4)cout/,编号姓名职位月工作量月总工资endl;pl-OutputQ;elsecharch;coutzz查无此人,按任意键返回菜单:;cinch;if(ch!=W)(return;elsecoutz,系统还未存入人员endl;return;voidCompany::Set()/基本数据的设置(coutWn*设置基础数据;cout经理固定月薪ManagerSalaryManagerSalary;cout,z销售经理固定月薪,zSalesManagerSalarySalesManagerSalary:cout/,销售经理提成SalesM
41、anagerPercentSalesManagerPercent;cout”销售人员提成SalesPercentSalesPercent;coutWagePerHour;cout=*ID:;cinID;voidCompany::SaveO/数据存盘(包括基础数据,人员数据),均采用文本文件(ofstream(Person,fBase;charc下栽可编辑下栽可编辑.专业,整理.专业,整理.coutz,Wn保存人员和基础数据,是否继续?Y/N:;cinc;if(c!=Y)coutz,数据未保存!”endl;return;保存人员编号、姓名、岗位fPerson.open(person,txt,io
42、s:out);Person*p=Worker;while(p)(fPersonNo,Wt,NameDutyDuty=2)fPersonGetAmountsOWt;i.f(p-Duty=3)fPersonGetAmountODuty=4)fPerson(Technician*)p)-GetT0Wt;fPersonnext;fPerson.closeO;保存基础数据fBase.open(base,txt,ios::out);fBase,z经理固定月薪ManagerSalaryendl:fBase销售经理固定月薪Wt,SalesManagerSalaryendl;fBase销售经理提成%Wt,SalesManagerPercentendl;fBase销售人员提成%WtSalesPercentendl;fBase技术人员小时工资WtWagePerHourendl:fBasebufManagerSalary;/经理固定月薪fBasebufSalesManagerSalary:销售经理固定月薪fBasebufSalesManagerPercent:销售经理提成下栽町编辑下栽町编
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年地标商业地产购买合同
- 2024年互利共赢合同协议
- 2024年太空旅游服务项目合同
- 2024年固废处理与资源化合作合同
- 2024年工程承包合同标的工程范围与建设标准
- 2024年实习生与导师协议
- 2024年学校操场建设室外工程合同
- 2024酒店维修合同
- 2024融资与理财服务代理合同
- 2024年国际货物买卖与运输合同
- 第三单元名著导读《骆驼祥子》整本书阅读教学设计+2023-2024学年统编版语文七年级下册
- 2024年中级电工考前必刷必练题库500题(含真题、必会题)
- 《第二单元测试卷》(单元练习)-2024-2025学年六年级上册数学北师大版
- 部编语文五上《父爱之舟》说课:聚焦场景抓细节-探究真心品真情
- 《数字身份辩设备》课件+2024-2025学年人教版(2024)初中信息科技七年级全一册
- 劳动一年级上册(人民版)第十课《我帮爸妈择择菜》(教学设计)
- 2024小学数学义务教育新课程标准(2022版)必考题库附含答案
- 申请失业保险金承诺书
- 2024年黑龙江龙江森工集团招聘笔试参考题库含答案解析
- 2024年通用技术集团招聘笔试参考题库含答案解析
- 中英文旅游合同范本
评论
0/150
提交评论