《面向对象程序设计课程设计报告模板.docx》由会员分享,可在线阅读,更多相关《面向对象程序设计课程设计报告模板.docx(7页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、面向对象程序设计课程设计报告模板 课程设计 20 20 学年第学期 设计题目职工工资管理系统设计 院(系)计算机科学与信息工程学院 专业 班级学号 学生 设计时间20 年1 月日2022 年1 月日 指导教师 提交日期20 年月日 应用技术学院课程设计任务书 二、对课程设计成果的要求(包括课程设计说明书、图纸、图表、实物等软硬件要求) (1)分析职工工资管理系统程序结构: 画出程序粗略的流程图和各个模块的详细流程图,每个功能模块用文字说明他们的功能(与对应流程图放在一起); (2)对你已经实现的功能(修改的、新编写的)做详细的说明, 并附上流程图及程序清单。 (3)自己对该职工工资管理系统的进
2、一步设想; (4)对于有设想但最终未实现的功能的大致编程思路的阐述; (5)论述在设计过程中遇到的并且对你具有启发性的问题。 (6)严禁抄袭,发现雷同,双方扣分。 三、课程设计工作进度计划: 周一、二:教师布置任务,讲解本课设模块。画出主程序粗略的流程图和各个模块的详细流程图。设计程序及调试程序。 周三、四:设计程序及调试程序。同时着手写报告。 周五:完成设计,提交报告,接受教师考评。 四、主要参考资料 (1)面向对象程序设计,莉,清华大学, (2)面向对象程序设计C+语言,朱战立等编电子科技大学 (3)面向对象程序设计-Visual C+,斌等编, 清华大学 (4)面向对象程序设计-C+语言
3、描述, Richard Johnsonbaugh(美)等著,蔡宇辉等译,机械工业,2022 目录 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+语言就
4、必须坚持用面向对象的思维方式分析问题、解决问题,最好的方法是仿照教材编写C+实际应用程序。 根据教材中人事管理应用程序框架,在此基础上按要求完成以下实际应用程序。1.1基本功能 1.1.1输入员工信息 输入员工信息包括以下几个信息点 员工 员工编号(4位数) 员工职务类型(1.技术经理2. 销售经理3. 技术人员4. 销售人员5. 文秘.) 输入后将自动保存至info.txt文件中。 在每次输入的时候均判断输入的合法性。 1.1.2计算员工工资 让用户输入要计算的员工,然后根据不同的计算方式进行计算,具体计算方法为 1. 技术经理有6000元的固定工资,工作业绩可分为3个等级,每级可获得100
5、0元奖金, 2. 销售经理有6000元的固定工资,奖金由他所管理的销售员的销售业绩而定,总销售额的2% 3.技术人员的工资根据他当月工作的小时数来定,时薪35元; 4. 销售人员的工资则是根据本人当月销售额来确定,工资为销售额的5%; 5. 文秘有4000元的基本工资,奖金视为当月工作情况而定; 提示是否需要存档 如果需要存档,则提示记录的月份,需要用户输入 在每次输入的时候均判断输入的合法性。1.2拓展功能: 1.2.1查询(已经完成) 1.2.2显示全部数据(已经完成) 1.2.3员工数据删除(未完成) 2课题分析 2.1类的设计 我的类的设计完全按照指导书上的设计图标所示, 设定一个虚基
6、类employee,对于类中所有数据全部定义为公有,为后面的继承提供方便接下来technician、manager、salesman和secretary全部共有继承employee 最后根据技术经理和销售经理的特点,技术经理techmanager继承technician和manager 销售经理继承manager和salesman 这样做的目地和特点是结构清晰,目地明确,方法简便。 2.2类的实现 technician、manager、salesman和secretary以及techmanager和salesmanager 构造函数全部传入自己的参数,用于计算工资,计算工资函数全部依照自己的计
7、算特点来进行计算,其中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();将员工的工资数据记录到结构体中,打开文件,将数据输入文件,关闭
限制150内