预览加载中,请您耐心等待几秒...
1/7
2/7
3/7
4/7
5/7
6/7
7/7

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

漳州师范学院C++课程设计公司人员管理姓名:卓峰学号:100814352系别:计算机科学与工程系专业:软件工程年级:10非师3指导教师:王桃发2011年5月14日一、课程设计题目介绍(含设计目的)项目名称:公司人员管理问题描述:某小型公司,主要有四类人员:经理、兼职技术人员、销售经理和兼职推销员。现在,需要存储这些人员的姓名、编号、级别、当月薪水,计算月薪总额并显示全部信息。(1)总体需要:1.过键盘添加某位职工的信息2.能够按姓名或职工编号查询职工的信息3.能够按职工编号修改某位职工的信息4.能够显示本公司所有职工全部信息,并计算月薪总额(2)输入需求:程序正常运行后,屏幕上显示一个文字菜单(根据序号选定相应的操作项目),当用户选定操作项目所对应的序号时,根据应用程序的提示信息,从键盘上输入相应的数据。(3)输出需求:1.应用程序正常运行后,要在屏幕上显示一个文字菜单2.要求用户输入数据时,要给出清晰、明确的提示信息,包括输入的数据内容、格式及结束方式等。(4)设计需求:1.应用程序正常运行后,要在屏幕上显示一个文字菜单2.要求用户输入数据时,要给出清晰、明确的提示信息,包括输入的数据内容、格式及结束方式等。(5)设计目的:本课程设计是计算机科学与技术专业重要的实践性环节之一,是在学生学习完《程序设计语言C++》课程后进行的一次全面的综合练习。1.巩固和加深学生对C++课程的基本知识的理解和掌握2.掌握C++编程和程序调试的基本技能3.利用C++进行基本的软件设计4.掌握书写程序设计说明文档的能力5.提高运用C++解决实际问题的能力二、设计内容(含类UML图等)(1)设计思路1.思考程序的实现思想2.实现了职工信息的读取3.实现了职工信息的添加4.实现了职工信息的查找5.通过职工编号查找职工信息6.通过职工编号删除职工信息7.实现了职工信息的修改(2)程序用到的两个类和一个主函数。1.classPerson员工类私有成员:intNo;//编号,charName[20];//姓名,intDuty;//岗位,doubleEarning;//收入,Person*next;共有成员:Person(),virtualvoidCalcSalary(),virtualvoidOutput()2.classCompany公司类私有成员:Person*Worker;//员工表,voidClear();//清除内存中数据共有成员:company(),~company(),voidAdd();//增加人员voidDelete();//删除人员voidModify();//修改人员voidQuery();//查询人员voidSet();//基础数据设置voidSave();//数据存盘(包括基础数据,人员数据)voidLoad();//数据装入(包括基础数据,人员数据)3.主函数:voidmain()(3)UML图Person类#:NoNameDutyEarning*NextPersonCalcsalaryOutputSystem类-:*WorkerClearSystem~SystemAddDeleteModifyQuerySetSaveLoadTechnician类-:tTechnicianGetTSetTCalcsalaryOutputSales类-:AmountSalesGetAmountSetAmountCalcsalaryOutputManager类ManagerCalcsalaryOutputSalesManager类-:AmountSaleaManagerGetAmountSetAmountCalcsalaryOutput三、测试调试(含调用说明,调试中出现的故障、原因及排除方法等)四、课程设计小结与心得体会通过这次长达多个星期的课程设计,我受益匪浅。我发现自己的不少知识欠缺,并懂得了学以致用以及知识的融会贯通。在做这个程序的时候,我遇到了不少问题。其中比较棘手的是关于文件读写,由于自己在学习过程中没有注意这部分知识,导致了程序最终的不完整,不能将信息读入和读出文件是程序最大的问题。通过老师的指导、网上的搜索学习、图书馆相关资料的查阅及同学们之间的讨论,我终于理解并能够运用这部分知识。同时由于是一个人独自设计程序,很多知识都需要自己主动地去汲取和探究。总之,课程设计考察的是一个学生理论联系实际并真正理解知识的能力,在这次考察中,我收获了很