面向对象程序设计课程设计报告模板

面向对象程序设计课程设计报告模板
面向对象程序设计课程设计报告模板

课程设计

20 ~ 20 学年第学期

设计题目职工工资管理系统设计

院(系)计算机科学与信息工程学院

专业

班级学号

学生

设计时间20 年1 月日——2011 年1 月日

指导教师

提交日期20 年月日

应用技术学院课程设计任务书

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

(1)分析职工工资管理系统程序结构: 画出程序粗略的流程图和各个模块的详细流程图,每个功能模块用文字说明他们的功能(与对应流程图放在一起);

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

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

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

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

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

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

周一、二:教师布置任务,讲解本课设模块。画出主程序粗略的流程图和各个模块的详细流程图。设计程序及调试程序。

周三、四:设计程序及调试程序。同时着手写报告。

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

四、主要参考资料

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

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

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

(4)《面向对象程序设计----C++语言描述》, Richard Johnsonbaugh(美)等著,蔡宇辉等译,机械工业,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中先定义了数据类型,全部为公有,这样方便下面的继承来访问到,对于里面的函数

void info();用于输入信息

bool search();用于查找

bool disply();用于全部显示

virtual void countsalary()=0;虚函数,用于计算工资,但是在这里什么也不做

int recordinfo();记录输入的信息

int recordsalary();记录员工的工资

具体做法

定义struct infostruct和struct salarystruct,用于存放不同要求的信息

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

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

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

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

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

相关主题
相关文档
最新文档