需求分析
1)问题描述
一高校有五类职工:教师,实验员,行政人员,教师兼职实验员,行政人员兼职教师,现要求编写程序来自动完成工资自动发放功能,同时注意生成的相关数据结果以文件方式存放在硬盘中。程序应具备从键盘录入,文件的可继续录入,任意职工的工资查询(可由职工编号和职工姓名来实现),如若有职工由于工作调动,则可进行相对应的删除动作。
2) 基本需求
1. 实现每个职工的基本信息查询;
2. 通过该系统能完成职工信息的添加,查询,删减,修改;
3. 将所有职工的信息保存到文件里,并从文件中读入并可持续输入;
4. 输入工作量以及职工类型,系统能自动计算出该职工的工资。
图1 功能模块示意图
说明:图1为高校工资管理系统整个功能模块组成。
设计环境
1)硬件环境
笔记本电脑
1.CPU :Intel(R) Core(TM) i5-1035G1;
2.内存:8GB DDR3;
3.硬盘:256GB SSD;
4.屏幕:14.0英寸;
2)软件环境
1.运行平台:Windows 10 64位;
2.开发平台:Win10 64位+Visual Studio 2022开发环境。
概要设计
说明:图2,图3为基本类图,图4为复杂类图
基本流程:
详细设计
1)类定义说明
教师类:
#ifndef TEACHER_H
#define TEACHER_H
#include"BasicSalary.h"
class Teacher:public BasicSalary{
public:
Teacher();
Teacher(string _name,double _baWage =800,double _lsWork = 0,
double _salary=800,double _laSubsidy=0,double _susidy=0);
virtual double basicWage_();//基础工资
virtual double classFree();//计算课时费
virtual double laboratorySubsidy_();//实验室补贴
virtual double subsidy_();//行政补贴
virtual string position();//职位
virtual double setSalary();//计算工资
~Teacher();
private:
double basicWage;//基础工资
double lastWorkload;//上学期工作量
double salary;//最后工资
//double classfree;//课时费
double laboratorySubsidy;//实验室补贴
double subsidy;//行政补贴
};
#endif // !TEACHER_H
2)成员函数详细设计
3)主函数详细设计
运行与测试
- 添加功能:
2.查看功能:
3 . 查找功能:
4 .删除功能:
5. 修改功能:
需要源码私聊