面向对象程序设计课程设计报告模板Word文件下载.docx

上传人:b****7 文档编号:22212595 上传时间:2023-02-03 格式:DOCX 页数:12 大小:382.99KB
下载 相关 举报
面向对象程序设计课程设计报告模板Word文件下载.docx_第1页
第1页 / 共12页
面向对象程序设计课程设计报告模板Word文件下载.docx_第2页
第2页 / 共12页
面向对象程序设计课程设计报告模板Word文件下载.docx_第3页
第3页 / 共12页
面向对象程序设计课程设计报告模板Word文件下载.docx_第4页
第4页 / 共12页
面向对象程序设计课程设计报告模板Word文件下载.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

面向对象程序设计课程设计报告模板Word文件下载.docx

《面向对象程序设计课程设计报告模板Word文件下载.docx》由会员分享,可在线阅读,更多相关《面向对象程序设计课程设计报告模板Word文件下载.docx(12页珍藏版)》请在冰豆网上搜索。

面向对象程序设计课程设计报告模板Word文件下载.docx

设计时间

20年1月日——20年1月日

系(院)

计算机科学与信息工程

专业

班级

一、课程设计任务(条件)、具体技术参数(指标)

本课程设计是《面向对象程序设计》课程的后继教学环节,学好C++语言就必须坚持用面向对象的思维方式分析问题、解决问题,最好的方法是仿照教材编写C++实际应用程序。

根据教材中人事管理应用程序框架,在此基础上按要求完成以下实际应用程序。

职工工资管理系统课程设计题目:

实现一个简单的工资管理系统。

系统的主要功能是计算职工当月工资并存档。

公司有5种不同类型的职工:

技术人员、销售人员、文秘、技术经理和销售经理,他们的工资计算方式各不相同。

技术人员的工资根据他当月工作的小时数来定,时薪35元;

销售人员的工资则是根据本人当月销售额来确定,工资为销售额的5%;

文秘有4000元的基本工资,奖金视为当月工作情况而定;

技术经理和销售经理都有6000元的固定工资,技术经理的工作业绩可分为3个等级,每级可获得1000元奖金,销售经理的奖金由他所管理的销售员的销售业绩而定,总销售额的2%

职工工资管理系统的设计:

对于整个系统的设计思路是,首先,由员工输入用户信息,包括编号、和职务;

然后,在计算某职工的当月工资时,系统先从已输入的职工信息文件中获取职工的工作类型,接着调用不同的处理程序进行计算;

最后将结果存档。

从用户需求中,可以发现5种类型的职员都可以分别设计为一个类。

首先,他们都属于雇员,因此可以设计一个基类employee(雇员),然后从中派生出technician(技术人员)类,salesman(销售人员)类、secretary(文秘)类。

对于技术经理和销售经理来说,他们都属于经理,所以设计时可以从employee类中派生出一个manager(经理)类作为techmanager(技术经理)和salesman(销售经理)类的父类。

而经理类本身并不对应实际的员工类型,由于技术经理有技术人员和经理的双重特点,因此techmanager类同时继承technician类和manger类;

销售经理有销售人员和经理的双重特点,因此salesmanager类同时继承salesman类和manager类。

根据用户需要employee类应该拥有的属性有:

编号、、职务、月份和工资。

Employee类的服务可以包括info()、search()、countSalary()、recordInfo()和recordSalary()。

其中,info()函数用于接收用户输入的职工信息;

search()函数用来根据职工名查找职工信息;

countSalary()函数为工资计算函数,但在基类中为空,原因是各类人员的工资计算方法不同,无法在基类中统一定义,必须在派生类中分别定义。

recordInfo()函数和recordSalary()函数分别是职工信息和职工工资的记录函数,分别将信息存入文件info.txt和salary.txt。

具体的基类和派生类的定义如下图:

二、对课程设计成果的要求(包括课程设计说明书、图纸、图表、实物等软硬件要求)

(1)分析职工工资管理系统程序结构:

画出程序粗略的流程图和各个模块的详细流程图,每个功能模块用文字说明他们的功能(与对应流程图放在一起);

(2)对你已经实现的功能(修改的、新编写的)做详细的说明,并附上流程图及程序清单。

(3)自己对该职工工资管理系统的进一步设想;

(4)对于有设想但最终未实现的功能的大致编程思路的阐述;

(5)论述在设计过程中遇到的并且对你具有启发性的问题。

(6)严禁抄袭,发现雷同,双方扣分。

三、课程设计工作进度计划:

周一、二:

教师布置任务,讲解本课设模块。

画出主程序粗略的流程图和各个模块的详细流程图。

设计程序及调试程序。

周三、四:

同时着手写报告。

周五:

完成设计,提交报告,接受教师考评。

四、主要参考资料

(1)《面向对象程序设计》,莉,清华大学,

(2)《面向对象程序设计C++语言》,朱战立等编电子科技大学

(3)《面向对象程序设计----VisualC++》,斌等编,清华大学

(4)《面向对象程序设计----C++语言描述》,RichardJohnsonbaugh(美)等著,蔡宇辉等译,机械工业,2003

1概述:

4

1.1基本功能5

1.2拓展功能:

6

2课题分析7

2.1类的设计7

2.2类的实现8

3详细设计说明9

3.1程序主界面9

3.2方案9

3.3程序描述(输入input)9

3.4运行结果............................................................11

4课程设计总结12

5软件使用说明13

6附录(参考文献,原代码:

)13

参考文献:

12

原代码12

1概述:

课程设计目的

本课程设计是《面向对象程序设计》课程的后继教学环节,学好C++语言就必须坚持用面向对象的思维方式分析问题、解决问题,最好的方法是仿照教材编写C++实际应用程序。

1.1基本功能

1.1.1输入员工信息

输入员工信息包括以下几个信息点

员工

员工编号(4位数)

员工职务类型(1.技术经理2.销售经理3.技术人员4.销售人员5.文秘.)

输入后将自动保存至info.txt文件中。

在每次输入的时候均判断输入的合法性。

1.1.2计算员工工资

让用户输入要计算的员工,然后根据不同的计算方式进行计算,具体计算方法为

1.技术经理有6000元的固定工资,工作业绩可分为3个等级,每级可获得1000元奖金,

2.销售经理有6000元的固定工资,奖金由他所管理的销售员的销售业绩而定,总销售额的2%

3.技术人员的工资根据他当月工作的小时数来定,时薪35元;

4.销售人员的工资则是根据本人当月销售额来确定,工资为销售额的5%;

5.文秘有4000元的基本工资,奖金视为当月工作情况而定;

提示是否需要存档

如果需要存档,则提示记录的月份,需要用户输入

1.2拓展功能:

1.2.1查询(已经完成)

1.2.2显示全部数据(已经完成)

1.2.3员工数据删除(未完成)

2课题分析

2.1类的设计

我的类的设计完全按照指导书上的设计图标所示,

设定一个虚基类employee,对于类中所有数据全部定义为公有,为后面的继承提供方便

接下来technician、manager、salesman和secretary全部共有继承employee

最后根据技术经理和销售经理的特点,技术经理techmanager继承technician和manager

销售经理继承manager和salesman

这样做的目地和特点是结构清晰,目地明确,方法简便。

2.2类的实现

technician、manager、salesman和secretary以及techmanager和salesmanager构造函数全部传入自己的参数,用于计算工资,计算工资函数全部依照自己的计算特点来进行计算,其中techmanager和salesmanager又有各自的特点进行了继承。

在基类的employee中先定义了数据类型,全部为公有,这样方便下面的继承来访问到,对于里面的函数

voidinfo();

用于输入信息

boolsearch();

用于查找

booldisply();

用于全部显示

virtualvoidcountsalary()=0;

虚函数,用于计算工资,但是在这里什么也不做

intrecordinfo();

记录输入的信息

intrecordsalary();

记录员工的工资

具体做法

定义structinfostruct和structsalarystruct,用于存放不同要求的信息

提示用户输入,然后存入临时的字符串数组,拷贝到NAME中,再提示输入编号,复制到number中。

boolsearch();

打开文件,读取信息,查找和name相匹配的,关闭文件。

booldisply(),打开文件,进行循环,知道文件结束,循环体中读一条信息显示一条

intrecordinfo();

将员工的基本数据记录到结构体中,打开文件,将数据输入文件,关闭文件

intrecordsalary();

将员工的工资数据记录到结构体中,打开文件,将数据输入文件,关闭文件

3详细设计说明

3.1程序主界面

3.1.1程序系统的结构

在类的实现中将题目中所包括的用法全部都写出,在主函数中,直接用IF语句来进行完成到,在每个IF语句中,对对象EM来访问类中的函数,方便而又快捷。

3.2方案

由菜单引导用户进行所需的功能,菜单如示意图所示要一目了然,

该程序不仅可以给用户提供输入员工信息的用处,而且具有查找,全部显示,以及保存和调用等功能,虽然在有些地方还有不足之处,有待开发,但是还是非常实用和方便。

按照题目提出的要求,先进行类的定义,随后对每个类进行函数的编写,完成类的实现,在主函数中,进行各个不同的操作,都是对pem数组进行调用。

*pem[6]={&

ma,&

tm,&

sm,&

te,&

sa,&

se}

3.3程序描述

可以添加新的信息。

其中添加时提示也非常清楚。

性能:

输入相应的信息,所有进行计算处理,包括保存和提取

输入项:

输入员工的工作信息

输出项:

对应的要求输出

算法

输入职工的及工作情况,判断输入容是否合法(每个在用户输入信息后都进行合法的判断),职工的信息分开放在两个结构体中。

两个结构体分别用于两个txt文件的保存。

接口

输入对应信息输出相应结果

主菜单——选择

主函数中要用到类中的函数时,全部通过对象来访问到。

3.4运行结果

4课程设计总结

5软件使用说明

6

7附录(参考文献:

源代码:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 学习计划

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

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