ImageVerifierCode 换一换
格式:DOCX , 页数:23 ,大小:137.87KB ,
资源ID:16634701      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/16634701.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C++设计报告Word文件下载.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

C++设计报告Word文件下载.docx

1、每小时工资额*总工作小时数文本界面为: 1新增员工信息 2删除员工信息 3员工信息搜索(按姓名) 4员工信息统计(按姓名或工资或类别) 5员工信息分类存储 6员工信息导入 7按工资排序 8退出第一章 绪论11 课程设计的目的C+作为一种面向对象的程序设计语言,它支持对类的抽象.了解面向对象的程序设计思想及其方法,其核心概念-类,包括类及其派生类的声明实现利用类来解决具体问题,并达到以下目的:(1)要求学生达到熟练掌握C+语言的基本知识和技能;(2)基本掌握面向对象程序设计的基本思路和方法;(3)能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题。12 课程设计的背景和意义C+是一门实

2、践性很强的课程,光靠听课和看书是学不好的。衡量学习好坏的标准不是懂不懂。所以开设了这次课程设计,目的在于使学生达到熟练掌握C+语言的基本知识和技能,掌握面向对象程序设计的基本思路和方法,能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题。这对于进一步巩固C+知识是一个很好的机会。同时我们在这次课程设计的过程中学到了很多课本以外的知识,解决了很多以前没有碰到的问题,可以说对程序设计这门课有了一个新的认识。13 课程设计环境本次课设采用的是Microsoft Visual C+6.0编写程序第二章 需求分析21 问题描述制作公司人员信息管理系统实现数据录入、数据删除、数据保存和数据显示以

3、及数据查询等一些功能。22 功能要求(1)根据自己的喜好设计系统封面(2)系统应包括记录编辑和记录查询等功能模块。记录编辑功能完成职工记录编辑的记录增加、记录删除和记录查询等功能。记录查询功能可以对数据集中的记录进行查询,要求按职工姓名进行查询23 问题的解决方案根据系统功能要求,可以将问题解决分为以下步骤: 1)应用系统分析,建立该系统的功能模块框图以及界面的组织和设计;2)分析系统中的各个实体及它们之间的关系;3)根据问题描述,设计系统的类层次;4)完成类层次中各个类的描述;5)完成类中各个成员函数的定义;6)完成系统的应用模块;7)功能调试;8)完成系统总结报告。第三章 系统设计31 数

4、据设计311 类设计本次程序设计一共定义了五个类:Employee, Manager,Floater,Workers和Salesman。在Employee类里定义了Empoyee类的缺省构造函数和它的析构函数,ADD函数用于实现新增成员的输入,delete1函数用于实现数据的删除,displayall函数用于实现数据的显示。Find用于实现在查找的时候得到姓名。Sort用于分类。排序用于根据工资排序。Manager,worker,floater和Salesman类公有继承Employee类,它们的函数功能,数据成员与基类的基本相同。312 函数设计在五个类里定义了它们的的缺省构造函数和它的析构

5、函数,Add函数用于实现新增成员的输入,通过for循环给对象数组赋值来实现。change函数实现数据的更改。delete1函数用于实现数据的删除。displayall函数用于实现数据的显示。Find用于实现根据姓名查找。Paixu实现通过工资高低排序。Sort实现通过员工信息分类存储。32 结构设计3.2.1系统流程图 322 程序清单1、main 函数:实现各个参数的定义及赋初值,提供选择界面;2、基类:定义参数、相关函数以及虚函数3、派生类:实现新增员工信息、删除员工信息、员工信息搜索(按姓名)、员工信息统计(按姓名或工资或类别)、员工信息分类存储、员工信息导入、按工资排序、退出等功能。3

6、23源程序代码: #include #includestring.hfstream.hiomanip.hstdlib.h int n=0; /统计雇员的人数 int K=0; /统计销售的人数 int H=0; /统计临时工人的人数 int M0=0; /统计经理的人数 int J=0; /统计一般工人的人数 class Employee protected: char name20;/姓名 char gender20;/性别 char date20; /出生日期 float accumPay; /月薪总额 char Staffcategory20; public: Employee()acc

7、umPay=0; Employee() void set_name(char *na)strcpy(name,na); void set_gender(char *ge)strcpy(gender,ge); void set_date(char *da)strcpy(date,da); void set_Staffcategory(char *staff)strcpy(Staffcategory,staff); void set_accumpay(float accu)accumPay=accu; char *get_name()return name; char *get_gender()r

8、eturn gender; char *get_date()return date; float get_accumpay()return accumPay; char *get_Staffcategory()return Staffcategory; virtual void computeSalay()=0; virtual void get_data() coutnamegenderdateStaffcategory; virtual void display()name genderdate StaffcategoryaccumPayendl; ; /普通工人 class Worker

9、:public Employee private: float dayRate; /每天酬金 int workDays; /当月工作天数 Worker()dayRate=180; virtual void get_data() coutworkDays; float get_dayRate()return dayRate; int get_workDays ()return workDays; void computeSalay()accumPay=dayRate*workDays; void display() /cout一般工人显示数据如下:姓名 性别 出生日期 员工类别 当月工作天数 每

10、天酬金 月薪总额 workDaysdayRate ; /销售人员 class Salesman: float commRate;/每件产品提成额 float sales; /销售的产品数量 float salary; /基本工资 Salesman() commRate=8; salary=3000;(姓名 性别 出生日期 员工类别 销售产品数量)sales; void computeSalay()accumPay=commRate*sales+salary; void display()销售人员数据显示数据如下:姓名 性别 出生日期 员工类别 销售的产品总量 每件产品提成额 基本工资 /月薪总

11、额salescommRatesalary /经理 class Manager: float monthSalary;/月工资 Manager()monthSalary=10000; float get_monthSalary()return monthSalary; void computeSalay()accumPay=monthSalary;经理显示数据如下:姓名 性别 出生日期 员工类别 月薪总额 /临时工 class Floater: float hourRates; /每小时酬金 int workHours; /当月工作时数 Floater()hourRates=15;(姓名 性别

12、出生日期 员工类别 当月工作时数)workHours; float get_hour_Rates()return hourRates; int get_workHours()return workHours; void computeSalay()accumPay=hourRates*workHours; void display()姓名 性别 出生日期 员工类别 当月工作时数 每小时酬金 月薪总额workHourshourRates Employee *E100; Employee *W100; Employee *S100; Employee *F100; Employee *M100;

13、void displayAll() ifstream in(employee.dat,ios:binary); if(in.fail()The File is not sucessfully opened for(int i=0;in;i+) in.read(char*)Ei,sizeof(Ei); for(int k=0;kdisplay(); in.close(); void ADD() int m; ofstream output(app); if(output.fail() The file was not successfully opened coutm; for (int i=0

14、; char t;输入第i+1t; if(t=w) En=new Worker(); En-get_data();computeSalay(); output.write(char*)En,sizeof(En); n+;m En=new Manager() ; En- output.write(char*)En,sizeof(En); if(t=s En=new Salesman(); En- f En=new Floater(); output.close(); /排序 void Paixu() for(int p=0;pp+) in.read(char*)Ep,sizeof(Ep); in

15、.close(); int i,j; Employee *temp; int swap; for(i=0;n-1; swap=0; for(j=0;jget_accumpay()Ej+1-get_accumpay() swap=1; temp=Ej; Ej=Ej+1; Ej+1=temp; if(!swap)break; ofstream out( for(int t=0;tget_name(),sname)=0) for(int j=i; En-1=NULL; n-; out.write(char*)Ei,sizeof(Ei); void Find()输入要查询的姓名: Ei- else if(i=n)cout J+;Salesman SK=new Salesman(); SK=Ei; out3.write(char*)SK,sizeof(SK); /SK-

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

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