C课程设计工资发放系统.doc

上传人:美****子 文档编号:58028461 上传时间:2022-11-06 格式:DOC 页数:28 大小:30.50KB
返回 下载 相关 举报
C课程设计工资发放系统.doc_第1页
第1页 / 共28页
C课程设计工资发放系统.doc_第2页
第2页 / 共28页
点击查看更多>>
资源描述

《C课程设计工资发放系统.doc》由会员分享,可在线阅读,更多相关《C课程设计工资发放系统.doc(28页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、目的与要求 1、目的:(1)要求学生达到熟练掌握C+语言的基本知识和技能;(2)基本掌握面向对象程序设计的基本思路和方法;(3)能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题。2、基本要求:(1)要求利用面向对象的方法以及C+的编程思想来完成系统的设计;(2)要求在设计的过程中,建立清晰的类层次;要分析和定义各个类,每个类中要有各自的属性和方法;要求运用面向对象的机制(继承、派生及多态性)来实现系统功能。(3)在系统的设计中,要有清晰的界面设计,同时采用文件进行读写操作。3、创新要求: 在基本要求达到后,可进行创新设计。问题描述及功能要求 某公司按月给其雇员发放工资,该公司有4种

2、雇员:1固定薪金的雇员2 小时工3 销售员4带薪销售员1 固定薪金的雇员:不管工作多长时间,总拿固定周薪;(但如果请假,要扣除相应的薪金,请假次数每次扣除金额30)2 小时工:以小时计算,加上加班费;(每月基本工作时间为160小时,其余为加班时间)3 销售员:按销售收入提成计算;(每月基本销售额度为30000元,低于此额度,在月薪里扣除少于30000部分的千分之二)4带薪销售员:底薪加上销售收入提成(要求同上,若有请假,也要扣除相应的薪金)如果Employee 生日所在的月份在本月,那么公司会无条件奖励200元具体要求附后问题的解决方案 根据系统功能要求,可以将问题解决分为以下步骤:(1)应用

3、系统分析,建立该系统的功能模块框图以及界面的组织和设计;(2)分析系统中的各个实体及它们之间的关系包括属性和行为;(3)根据问题描述,设计系统的类层次;(4)完成类层次中各个类的描述(包括属性和方法);(5)完成类中各个成员函数的定义;(6)完成系统的应用模块;(7)功能调试;(8)完成系统课程设计报告,设计报告要求 1封面:(格式附后)2课程设计任务书3课程设计报告: 系统总体方案 设计思路和主要步骤 各功能模块和流程图 设计代码 心得体会和参考资料0 回复 1楼 2019-09-01 14:03 举报 |个人企业举报垃圾信息举报 大侠0807亮出18CM3要求实现:1 初始化系统创建存储该

4、公司职工信息的存储系统(Employee.dat),并进行职工信息的输入,注意:公司的职工编号由系统按顺序自动生成,并且员工号一旦分配好就不可以再修改!;第一次运行系统,根据系统提示从键盘输入员工的相应信息进行初始化操作,通过退出保存至Employee.dat文件中,若原来存在Employee.dat,则原数据被全部删除。注意测试该文件是否存在!ifstream in(Employee.dat) if(!in)判断以后每次运行程序,初始化时都从文件Employee.dat中读取员工数据即可2 职工信息输出要求可以输出:某类职工当月的薪水发放信息分类输出全体职工当月的薪水发放信息n某一名职工当月

5、的薪水发放信息n格式如下:* 固定薪金职员*编号 姓名 出生年月 工种 奖励薪金 固定月薪 请假天数 应扣 实发工资 是否领取*计时职员*编号 姓名 出生年月 工种 奖励薪金 工作时长 时薪 加班时长 实发工资 是否领取*普通销售员*编号 姓名 出生年月 工种 奖励薪金 销售额 提成比例 应扣 实发工资 是否领取*带薪销售员*编号 姓名 出生年月 工种 奖励薪金 固定月薪 销售额 提成比例 请假天数 应扣 实发工资 是否领取3 添加职工通过键盘输入相应的职工信息,添加职工,并通过退出保存至Employee.dat文件中。4 删除职工通过输入职工的工号,首先输出要删除的职工相应的信息,经确认后删

6、除,考虑职工不存在的情况。并通过退出保存至Employee.dat文件中。5 修改信息要求可以修改:除编号外的所有职工信息,包括工种以及由修改工种带来的各项操作n修改某一类工种的信息,如销售人员的提成比例,统一提高0.05;输出修改前的职工信息, 经确认后修改后,输出修改后的职工信息,考虑职工不存在的情况,并通过退出保存至Employee.dat文件中。6 工资发放通过输入职工号方式,输出查询到的职工相应的信息,经确认发放工资,将员工是否领取工资信息设置为是(即真),考虑所要查询的职工编号不存在和已经发放过工资的情况。7保存退出通过确认,保存修改的信息至文件Employee.dat中,退出系统

7、,结束运行。#include#includeusing namespace std;int N=0;int MONTH=1;int LING=0;int GX_gd_salary=2000;int XSG_sx=10;double XSY_tch=0.05;int DXSY_gd_salary=800;class peopleprivate:int num;char *name;int year,month;int gz;/工种int jiangli;/奖励public:void in_peole(int n,char *na,int y,int m,int g)/修改个人信息num=n;na

8、me=new charstrlen(na)+1;strcpy(name,na);year=y;month=m;gz=g;if(m=MONTH)jiangli=200;else jiangli=0;/people()delete *name;int get_num()return num;char get_name()return *name;int get_year()return year;int get_month() return month;int get_gz() return gz;void print()coutnum name year month gz jiangli ;in

9、t get_jiangli() return jiangli;/class GX:virtual public people/固定薪金的雇员 1private:int gd_salary; /固定工资int qj;/请假次数int yk_salary; /应扣工资int salary; /实发工资/int lq;/是否领取public:void chushihua()/初始化gd_salary=GX_gd_salary;qj=LING;yk_salary=LING;salary=gd_salary+get_jiangli()-yk_salary;/cout初始化 固定薪金的雇员 1endl;v

10、oid qingjia()/请假函数qj+;yk_salary=yk_salary+30;salary=salary-30;int get_gd_salary() return gd_salary;int get_qj() return qj ;int get_yk_salary() return yk_salary;int get_salary() return salary;/int get_lq() return lq;void print()coutgd_salary qj yk_salary salary ;/lq;/class XSG:virtual public people/小

11、时工 2private:int gz_time;/工作时长int sx;/时薪int jb_time;/加班时长int salary; /实发工资/int lq;/是否领取public:void chushihua()/初始化gz_time=LING;sx=XSG_sx;/时薪jb_time=LING;salary=LING+get_jiangli();/cout初始化 小时工 2160)gz_time=160;jb_time=time-160;else gz_time=time;salary=time*sx;int get_gz_time() return gz_time;int get_s

12、x() return sx;int get_salary() return salary;/int get_lq() return lq;void print()coutgz_time sx jb_time salary ;/lq;/class XSY:virtual public people/销售员 3private:int xse;/销售额double tch;/提成比例int yk_salary; /应扣工资int salary; /实发工资/int lq;/是否领取public:void chushihua()/初始化xse=0;tch=XSY_tch;yk_salary=0;sal

13、ary=(int)(double)xse*tch)-yk_salary+get_jiangli();/cout初始化 销售员 3endl;void xiaoshou(int e)/销售函数xse=e;if(e30000)yk_salary=e*2/1000;salary=(int)(double)xse*tch)-yk_salary;coutxse tch yk_salary salary ;int get_yk_salary() return yk_salary;int get_xse() return xse;double get_tch() return tch;int get_sala

14、ry() return salary;/int get_lq() return lq;void print()coutxse tch yk_salary salary ;/lq;/salary; /class DXSY:virtual public people/带薪销售员 4private:int gd_salary; /固定工资int xse;/销售额double tch;/提成比例int qj;/请假次数int yk_salary; /应扣工资int salary; /实发工资/int lq;/是否领取public:void chushihua()/初始化gd_salary=DXSY_g

15、d_salary;xse=0;tch=XSY_tch;qj=0;yk_salary=0;salary=gd_salary+(int)(double)xse*tch)-yk_salary+get_jiangli();/cout初始化 带薪销售员 4endl;void qingjia()/请假函数qj+;yk_salary=yk_salary+30;salary=salary-30;void xiaoshou(int e)/销售函数xse=e;if(e30000)yk_salary=e*2/1000;salary=salary+(int)(double)xse*tch)-yk_salary;cou

16、tgd_salary xse tch qj yk_salary salary ;/lq;int get_gd_salary() return gd_salary;int get_xse() return xse;double get_tch() return tch;int get_qj() return qj ;int get_yk_salary() return yk_salary;int get_salary() return salary;/int get_lq() return lq;void print()coutgd_salary xse tch qj yk_salary sal

17、ary ;/lq;/class AAA:public GX,public XSG, public XSY,public DXSYprivate:/int jiangli;/奖励int lq;/是否领取public:/int get_jiangli() return jiangli;void qingjia()/请假函数if(get_gz()=1) GX:qingjia();if(get_gz()=4) DXSY:qingjia();void xiaoshou(int e)/销售函数if(get_gz()=3) XSY:xiaoshou(e);if(get_gz()=4) DXSY:xiaosh

18、ou(e);void print()/输出函数people:print();if(get_gz()=1) GX:print();if(get_gz()=2) XSG:print();if(get_gz()=3) XSY:print();if(get_gz()=4) DXSY:print();cout lq endl;void lingqian()lq=1;/工资发放void chushihua()GX:chushihua();XSG:chushihua();XSY:chushihua();DXSY:chushihua();lq=0;void menu()/主菜单 cout欢迎使用工资发放系统e

19、ndl;cout一、 员工信息管理 endl;cout1 初始化系统 2 职工信息输出endl;cout3 添加职工 4 删除职工 endl;cout5 修改信息 6 工资发放 endl;cout 7请假 8.保存退出endl;cout请输入相应编号:i;switch(i)case 1:for(;1;)N+;char na20;int y, m, g,time,e;char c;cout请输入员工信息endl;cout编号: Nendl;cout姓名: na;cout出生年月,年: y;cout出生年月,月: m;cout工种: endl;cout1.固定薪金的雇员 2.小时工 3.销售员 4

20、.带薪销售员endl;cout请选择编号g;DXN-1.in_peole(N,na,y,m,g);DXN-1.chushihua();if(g=1) if(g=2)cout请输入这个月总的工作间: time;DXN-1.zh_time(time);if(g=3)cout请输入这个月总的销售额: e;DXN-1.xiaoshou(e);if(g=4)cout请输入这个月总的销售额: e;DXN-1.xiaoshou(e);cout是否继续输入 Y确认 N取消c;if(c=Y)elsebreak;break;case 2:cout* 固定薪金职员*endl;cout编号 姓名 出生年月 工种 奖励

21、薪金 固定月薪 请假天数 应扣 实发工资 是否领取endl;for(int a=0; a=N; a+)if(DXa.get_gz()=1) DXa.print();cout*计时职员* endl;cout编号 姓名 出生年月 工种 奖励薪金 工作时长 时薪 加班时长 实发工资 是否领取 endl;for(int b=0;b=N ; b+)if(DXb.get_gz()=2) DXb.print();cout*普通销售员* endl;cout编号 姓名 出生年月 工种 奖励薪金 销售额 提成比例 应扣 实发工资 是否领取endl;for(int c=0;c=N ; c+)if(DXc.get_g

22、z()=3) DXc.print();cout*带薪销售员*endl;cout编号 姓名 出生年月 工种 奖励薪金 固定月薪 销售额 提成比例 请假天数 应扣 实发工资 是否领取endl;for(int d=0;d=N ; d+)if(DXd.get_gz()=4) DXd.print();break;case 3:for(;1;)N+;char na20;int y, m, g,time,e;char c;cout请输入员工信息endl;cout编号: Nendl;cout姓名: na;cout出生年月,年: y;cout出生年月,月: m;cout工种: endl;cout1.固定薪金的雇

23、员 2.小时工 3.销售员 4.带薪销售员endl;cout请选择编号g;DXN-1.in_peole(N,na,y,m,g);DXN-1.chushihua();if(g=1) if(g=2)cout请输入这个月总的工作间: time;DXN-1.zh_time(time);if(g=3)cout请输入这个月总的销售额: e;DXN-1.xiaoshou(e);if(g=4)cout请输入这个月总的销售额: e;DXN-1.xiaoshou(e);cout是否继续输入 Y确认 N取消c;if(c=Y)elsebreak;break;case 4: int i,MM;char c;cout请输

24、入职工编号i;for(int a=0; a=N; a+)if(DXa.get_num()=i)MM=a;break;DXMM.print();/输出这个职工的信息coutY确认 N取消c;if(c=Y)for(; MM=N; MM+)DXMM=DXMM+1;cout删除成功endl;else;break;case 5:;break;case 6:int i ,IF=1;char c;cout请输入职工编号i;for(int a=0; a=N; a+)if(DXa.get_num()=i)DXa.print();/输出这个职工的信息coutY确认 N取消c;if(c=Y)DXa.lingqian

25、();DXa.print();IF=0;break;elseif(IF)cout编号不存在,请重新输入endl;elsebreak;break;case 7:int i ,IF=1;char c;cout请输入职工编号i;for(int a=0; a=N; a+)if(DXa.get_num()=i)DXa.print();/输出这个职工的信息coutY确认 N取消c;if(c=Y)DXa.qingjia();DXa.print();IF=0;break;elseif(IF)cout编号不存在,请重新输入endl;elsebreak;break;case 8: ;goto jieshele;jieshele: ;第 28 页

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 文案大全

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com