c++课程设计-职工工资管理系统设计.doc
《c++课程设计-职工工资管理系统设计.doc》由会员分享,可在线阅读,更多相关《c++课程设计-职工工资管理系统设计.doc(30页珍藏版)》请在沃文网上搜索。
1、目录2010 2011学年第一学期- 1 -1概述- 3 -1.1基本功能- 3 -1.2拓展功能- 3 -2课题分析- 3 -2.1类的设计- 3 -2.2类的实现- 4 -2.2.1class employee- 4 -2.2.2class technician- 5 -2.2.3class salesman- 6 -2.2.4class secretary- 6 -2.2.5class manager- 7 -2.2.6class techmanager- 7 -2.2.7clasee salesmanager- 8 -3详细设计说明- 9 -3.1程序主界面- 9 -3.2总体设计方案
2、- 9 -3.3程序描述- 9 -3.4各菜单功能介绍- 10 -3.4.1添加员工信息- 10 -3.4.2添加员工工资- 10 -3.4.3保存员工信息- 11 -3.4.4保存员工信息和工资- 12 -3.4.5读入员工信息- 12 -3.4.6读取员工信息和工资- 13 -3.4.7查询单个员工信息工资- 13 -3.4.8按职务查询员工信息工资- 14 -3.4.9查询所有员工信息工资- 14 -3.4.10退出- 15 -4程序测试- 15 -4.1.1发现并解决的bug:- 15 -4.1.2暂时没有解决的问题:- 16 -4.1.3程序测试信息:- 16 -5课程设计总结- 3
3、0 -6软件使用说明- 30 -7附录(参考文献,原代码:)- 30 -7.1.1参考文献- 30 -7.1.2原代码- 31 -1 概述1.1 基本功能本程序的基本功能有:1. 添加员工的基本信息,如名字,编号,职位。2. 添加员工的工资,并自动根据员工的职位计算工资。3. 存档员工的基本信息。4. 存档员工当月的基本信息和工资。1.2 拓展功能本程序的拓展功能有:1. 查询单个员工的基本信息和当月工资。2. 根据职位显示该职位下所有员工的基本信息和当月工资。3. 查询所有员工的基本信息和当月工资。4. 从文件中读入员工的基本信息。5. 从文件中读入员工的基本信息和当月工资2 课题分析2.1
4、 类的设计从用户需求中,可以发现5种类型的职员都可以分别设计为一个类。首先,他们都属于雇员,因此可以设计一个基类employee(雇员),然后从中派生出technician(技术人员)类,salesman(销售人员)类、secretary(文秘)类。对于技术经理和销售经理来说,他们都属于经理,所以设计时可以从employee类中派生出一个manager(经理)类作为techmanager(技术经理)和salesman(销售经理)类的父类。而经理类本身并不对应实际的员工类型,由于技术经理有技术人员和经理的双重特点,因此techmanager类同时继承technician类和manger类;销售经
5、理有销售人员和经理的双重特点,因此salesmanager类同时继承salesman类和manager类。2.2 类的实现2.2.1 class employee2.2.1.1 类型基类2.2.1.2 声明class employeeprotected:string number;string name;int status;int month;double salary;public:employee();int info(string num,string na,int stat);bool search(string infom);virtual int countSalary();in
6、t recordInfo();int recordSalary();int getStatus()return status;string getNumber()return number;void setInfo(string num,string na);void setInfo(string num,string na,int stat);void setInfo(string num,string na,int mo,double sal);void setMonth(int mon)month=mon;void setStatus(int stat)status=stat;void
7、show(); ;2.2.1.3 成员函数说明成员函数说明employee()默认构造函数,执行格式化操作int info(string num,string na,int stat)将获得的编号姓名和职位存入protected成员bool search(string infom)搜索信息,如果找到返回1,找不到返回0virtual int countSalary()虚函数,用于处理动态的工资计算方法int recordInfo()将职工基本信息存入文件int recordSalary()将职工基本信息和当月工资存入文件int getStatus()获取该职员的职位string getNumb
8、er()获取该职员的编号void setInfo(string num,string na)将名字编号存入portected成员void setInfo(string num,string na,int stat)将名字编号职位存入portected成员void setInfo(string num,string na,int mo,double sal)将名字编号职位工资存入portected成员void setMonth(int mon)将月份存入portected成员void setStatus(int stat)将职位存入portected成员void show()显示该职工的所有信息
9、2.2.2 class technician2.2.2.1 类型派生类:从employee中虚拟派生2.2.2.2 声明class technician:virtual public employeeprotected:int workHour;float hourlySalary;public:technician();int countSalary();2.2.2.3 成员函数说明成员函数说明technician()默认构造函数,执行格式化操作int countSalary()计算工资函数2.2.3 class salesman2.2.3.1 类型派生类:从employee中虚拟派生2.2
10、.3.2 声明class salesman:virtual public employeeprotected:float salesum;double getRate;public:salesman();int countSalary();2.2.3.3 成员函数说明成员函数说明salesman()默认构造函数,执行格式化操作int countSalary()计算工资函数2.2.4 class secretary2.2.4.1 类型派生类:从employee中虚拟派生2.2.4.2 声明class secretary:virtual public employeeprivate:float f
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
20 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- c+ 课程设计 职工工资 管理 系统 设计