收藏 分销(赏)

小型公司工资管理系统报告.doc

上传人:可**** 文档编号:1060812 上传时间:2024-04-12 格式:DOC 页数:25 大小:42.50KB
下载 相关 举报
小型公司工资管理系统报告.doc_第1页
第1页 / 共25页
小型公司工资管理系统报告.doc_第2页
第2页 / 共25页
小型公司工资管理系统报告.doc_第3页
第3页 / 共25页
小型公司工资管理系统报告.doc_第4页
第4页 / 共25页
小型公司工资管理系统报告.doc_第5页
第5页 / 共25页
点击查看更多>>
资源描述

1、 中国石油大学(华东)信息与控制工程学院 程序设计实习报告 小型公司工资管理系统的设计与实现 专业班级: 学 号: 姓 名: 起止日期: 指导老师: 2010年8月 fengzhanhuaer 小型公司工资管理系统 第 2 页 目录 一、实习目的3 二、实习内容3 1. 设计说明与要求3 2. 程序类体3 3. 流程图4 4. 程序代码4 三、设计思路38 四、输出格式39 2 fengzhanhuaer 小型公司工资管理系统 第 3 页 一、实习目的 1、熟悉c+中类的概念,类的封装,继承和多态的实现方式。 2、了解系统开发的需求分析,类层次设计,模块分析,编码测试,模块组 装和与整体调试的

2、全过程。 3、逐步熟悉程序设计的方法,并养成良好的编程习惯。 二、实习内容 1、设计说明与要求: (1)说明: 公司主要有4类人员:经理,技术员,销售员,销售经理。要求存储这些人的职工号,姓名,月工资,岗位,年龄,性别等信息。 工资的计算方法: 经理:固定月薪为8000; 技术员:工作时间*小是工资(100元每小时); 销售员:销售额*4%提成; 销售经理:底薪(5000)+所辖部门销售额总额*0.5%; (2)要求: a输入数据要求每类人员不能少于4人,并按统一格式输出格式输出; b实现的功能: (1)数据录入:用键盘输入各类员工的数据; (2)数据统计:统计各销售经理下属销售员的销售额及销

3、售额之和;销售经理按工资进行冒泡排序; (3)数据打印:按表格格式打印各类员工的数据信息; (4)数据备份:把各类员工的数据信息写入文本中保存; (5)退出:退出本系统,结束程序的运行; 2、程序的类体: 雇员类 技术员类 经理类 销售员类销售经理类 3 fengzhanhuaer 小型公司工资管理系统 第 4 页 3、流程图 开始 主函数 输入i i=4备份 i=1录入 i=2统计 i=3打印 i=5退出 输入i i=1 i=2 i=3 i=4 i=5 jsy类 xsy类 xsjl类 jl类 返回 结束 4 、程序代码 Main.cpp文件: #include #include #inclu

4、de #include功能函数.h using namespace std; void main() 4 fengzhanhuaer 小型公司工资管理系统 第 5 页 int z;z=0; int flag=1,operate; do cout 小型公司工资管理系统n; cout n; cout 请选择您所需的操作 n; cout 数据输入:1,并按回车键 n; cout 数据统计:2,并按回车键 n; cout 数据打印:3,并按回车键 n; cout 数据备份:4,并按回车键 n; cout 退出系统:5,并按回车键 n; cout n; coutoperate; switch(opera

5、te) case 1: cout请输入数据:endl; cout正在输入数据.endl; set (z); break; case 2: cout请等待.endl; if(z=0) 5 fengzhanhuaer 小型公司工资管理系统 第 6 页 cout 警告!操作无法完成!请先输入员工信息!aendl;/新增了录入错误警告功能,且发出响铃.防止错误操作 break; cout正在进行数据统计.endl; count(); break; case 3: cout请等待.endl; if(z=0) cout 警告!操作无法完成!请先输入员工信息!aendl; break; cout正在进行数据

6、打印.endl; output(); ; break; case 4: cout请等待.endl; if(z=0) 6 fengzhanhuaer 小型公司工资管理系统 第 7 页 cout 警告!操作无法完成!请先输入员工信息!aendl; break; cout正在进行数据备份.endl; backup(); break; case 5: exit(0); break; default: cout错误!请重新选择1-5间的数输入aendlendl; break; while(1); cout退出菜单,回到主程序继续向下执行endl; 功能函数.h文件 #include类体.h #inclu

7、de using namespace std; jsy a2; xsjl b2; jl c2; 7 fengzhanhuaer 小型公司工资管理系统 第 8 页 xsy d4; int set(int &x) int i; do cout 小型公司工资管理系统endl; endl; cout 请选择您所需要的操作 endl; cout 经理数据输入 : 1,并按回车键 endl; cout 技术员数据输入 : 2,并按回车键 endl; cout 销售员数据输入 : 3,并按回车键 endl; cout 销售经理数据输入: 4,并按回车键 endl; cout 返回上一层 : 5,并按回车 e

8、ndl; cout endl; cout couti; switch(i) case 1: int k; k=0; while(k2) ck.input4(); k+; 8 fengzhanhuaer 小型公司工资管理系统 第 9 页 break; case 2: int j; j=0; while(j2) aj.input1(); j+; break; case 3: int l; l=0; while(l4) dl.input3(); l+; int m,n,a; for(n=0;n2;n+) a=0; for(m=0;m4;m+) if(d0.onum2()=bn.onum() 9 fe

9、ngzhanhuaer 小型公司工资管理系统 第 10 页 a=d0.osell()+a; bn.set(a); break; case 4: int o; o=0; while(o2) bo.input2(); o+; break; case 5: break; default : cout错误!请重新输入15之间的数aendlendl; 10 fengzhanhuaer 小型公司工资管理系统 第 11 页 while(i!=5); x+; return 0; void count() int i; i=0; int k; xsy h2; while(i2) k=0; for(int j=0

10、;j5;j+) if(dj.onum2()=bi.onum() hk=dj; k+; int a; a=h0.osell()+h1.osell(); bi.set(a); 11 fengzhanhuaer 小型公司工资管理系统 第 12 页 cout 职工编号为bi.onum()销售经理bi.oname()下属销售员的业绩为:endl; coutendl; endl;/ cout 表格不在类体中设置是考虑到类的通用性问题 cout 职工号 姓名 销售额(元)endl; coutsetiosflags(ios:right) endl; cout setw(12)h0.onum()setw(10)

11、h0.oname()setw(12)h0.osell()endl;/中间几行可采用循环结构,增加函数的灵活性。 cout endl; cout setw(12)h1.onum()setw(10)h1.oname()setw(12)h1.osell()endl; cout endl; cout 销售额总计:setw(24) aendl; cout endl; coutendl; i+; xsjl e; for(int q=0;q1;q+) for(int w=0;w1-q;w+) if(bw.oincome()bw+1.oincome() e=bw;bw=bw+1;bw+1=e; 12 feng

12、zhanhuaer 小型公司工资管理系统 第 13 页 cout销售经理按工资排序为:endl; coutendl; cout endl; coutsetiosflags(ios:right) 职工号 姓名 性别 年龄 工资 endl; cout endl; cout setw(10)b0.onum() setw(10)b0.osex()setw(10)b0.oname()setw(10)b0.oage()setw(10)b0.oincome()endl; cout endl; cout setw(10)b1.onum() setw(10)b1.osex()setw(10)b1.oname()

13、setw(10)b1.oage()setw(10)b1.oincome()endl; cout endl; void output() cout 职工基本情况一览表如下:endlendl; cout 技术员:endlendl; 13 fengzhanhuaer 小型公司工资管理系统 第 14 页 cout endl; cout 职工号 姓名 性别 年龄 工资 endl; cout endl; cout setw(10)a0.onum() setw(10)a0.osex()setw(10)a0.oname()setw(10)a0.oage()setw(10)a0.oincome()endl; c

14、out endl; cout setw(10)a1.onum() setw(10)a1.osex()setw(10)a1.oname()setw(10)a1.oage()setw(10)a1.oincome()endl; cout endl; coutendl; cout 经理:endlendl; cout endl; cout 职工号 姓名 性别 年龄 工资 endl; cout endl; cout setw(10)c0.onum() setw(10)c0.osex()setw(10)c0.oname()setw(10)c0.oage()setw(10)c0.oincome()endl;

15、cout endl; 14 fengzhanhuaer 小型公司工资管理系统 第 15 页 cout setw(10)c1.onum() setw(10)c1.osex()setw(10)c1.oname()setw(10)c1.oage()setw(10)c1.oincome()endl; cout endl; coutendl; cout 销售经理:endlendl; cout endl; cout 职工号 姓名 性别 年龄 工资 endl; cout endl; cout setw(10)b0.onum() setw(10)b0.osex()setw(10)b0.oname()setw(

16、10)b0.oage()setw(10)b0.oincome()endl; cout endl; cout setw(10)b1.onum() setw(10)b1.osex()setw(10)b1.oname()setw(10)b1.oage()setw(10)b1.oincome()endl; cout endl; coutendl; cout 销售员:endlendl; cout ;/受窗口大小的限制此处正好为一行,故不用加endl cout 职工号 姓名 性别 年龄 工资 所属部门经理编号; 15 fengzhanhuaer 小型公司工资管理系统 第 16 页 cout ; cout

17、setw(6)d0.onum() setw(6)d0.osex()setw(8)d0.oname() setw(8)d0.oincome()setw(6)d0.oage()setw(16)d0.onum2(); cout ; cout setw(6)d1.onum() setw(6)d1.osex()setw(8)d1.oname() setw(8)d1.oincome()setw(6)d1.oage()setw(16)d1.onum2(); cout ; cout setw(6)d2.onum() setw(6)d2.osex()setw(8)d2.oname() setw(8)d2.oin

18、come()setw(6)d2.oage()setw(16)d2.onum2(); cout ; cout setw(6)d3.onum() setw(6)d3.osex()setw(8)d3.oname() setw(8)d3.oincome()setw(6)d3.oage()setw(16)d3.onum2(); cout ; coutendl; void backup() 16 fengzhanhuaer 小型公司工资管理系统 第 17 页 fstream backup; backup.open(c:备份.txt,ios:in|ios:out|ios:trunc); backup 职工基

19、本情况一览表如下:endlendl; backup 技术员:endlendl; backup endl; backup 职工号 姓名 性别 年龄 工资 endl; backup endl; backup setw(10)a0.onum() setw(10)a0.osex()setw(10)a0.oname()setw(10)a0.oage()setw(10)a0.oincome()endl; backup endl; backup setw(10)a1.onum() setw(10)a1.osex()setw(10)a1.oname()setw(10)a1.oage()setw(10)a1.o

20、income()endl; backup endl; backupendl; backup 经理:endlendl; backup endl; backup 职工号 姓名 性别 年龄 工资 endl; backup 17 fengzhanhuaer 小型公司工资管理系统 第 18 页 endl; backup setw(10)c0.onum() setw(10)c0.osex()setw(10)c0.oname()setw(10)c0.oage()setw(10)c0.oincome()endl; backup endl; backup setw(10)c1.onum() setw(10)c1

21、.osex()setw(10)c1.oname()setw(10)c1.oage()setw(10)c1.oincome()endl; backup endl; backupendl; backup 销售经理:endlendl; backup endl; backup 职工号 姓名 性别 年龄 工资 endl; backup endl; backup setw(10)b0.onum() setw(10)b0.osex()setw(10)b0.oname()setw(10)b0.oage()setw(10)b0.oincome()endl; backup endl; backup setw(10

22、)b1.onum() setw(10)b1.osex()setw(10)b1.oname()setw(10)b1.oage()setw(10)b1.oincome()endl; backup endl; backupendl; 18 fengzhanhuaer 小型公司工资管理系统 第 19 页 backup 销售员:endlendl; backup endl; backup 职工号 姓名 性别 年龄 工资 所属部门经理编号endl; backup endl; backup setw(6)d0.onum() setw(8)d0.osex()setw(8)d0.oname() setw(8)d0

23、.oincome()setw(6)d0.oage()setw(16)d0.onum2()endl; backup endl; backup setw(6)d1.onum() setw(8)d1.osex()setw(8)d1.oname() setw(8)d1.oincome()setw(6)d1.oage()setw(16)d1.onum2()endl; backup endl; backup setw(6)d2.onum() setw(8)d2.osex()setw(8)d2.oname() setw(8)d2.oincome()setw(6)d2.oage()setw(16)d2.onu

24、m2()endl; backup endl; backup setw(6)d3.onum() setw(8)d3.osex()setw(8)d3.oname() setw(8)d3.oincome()setw(6)d3.oage()setw(16)d3.onum2()endl; 19 fengzhanhuaer 小型公司工资管理系统 第 20 页 backup endl; backupendl; backup.close; 类体.h文件 #include #include using namespace std; class gy /基类 public: void input() 请输入雇员职

25、工号: ; cin num; coutsetw(40)name; coutsetw(40)sex; coutsetw(40)age; string oname()return name; /因为整型和字符型变量输入时稍有不符就会导致系统瘫痪,而录入信息又较多且年龄等信息不参加算术运算,采用string型可大大减少系统瘫痪机会。 int onum()return num; string oage()return age; string osex()return sex; protected : 20 fengzhanhuaer 小型公司工资管理系统 第 21 页 int income; int

26、num; string name; string age; string sex; ; class jsy :public gy /技术员类 public: void input1() cout请输入技术员信息endl; gy:input(); coutsetw(40)time; income =time*100; oincome()return income; int protected : int time; ; class jl : public gy /经理类 public : void input4() cout请输入经理信息endl; gy:input(); income=0; 2

27、1 fengzhanhuaer 小型公司工资管理系统 第 22 页 int oincome()income=8000; return income; ; class xsy:public gy /销售员类 public : void input3() cout请输入销售员的信息sell; coutsetw(40)num2; income=sell*0.04; int onum2()return num2; int osell()return sell; int oincome()return income; protected : int sell; int num2; ; class xsjl:public gy /销售经理类 public : int set(int a)income=a*0.005+5000;return 0; void input2() 22 fengzhanhuaer 小型公司工资管理系统 第 23 页 cout请输入销售经理信息endl; gy:input(); int oincome()return income; int set2(int a)income=a ;return 0; ; 三、设计思路 本程序开

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服