欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

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

    • 资源ID:35096290       资源大小:42.50KB        全文页数:25页
    • 资源格式: DOC        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

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

    中国石油大学(华东)信息与控制工程学院 程序设计实习报告 小型公司工资管理系统的设计与实现 专业班级: 学 号: 姓 名: 起止日期: 指导老师: 2010年8月 fengzhanhuaer 小型公司工资管理系统 第 2 页 目录 一、实习目的3 二、实习内容3 1. 设计说明与要求3 2. 程序类体3 3. 流程图4 4. 程序代码4 三、设计思路38 四、输出格式39 2 fengzhanhuaer 小型公司工资管理系统 第 3 页 一、实习目的 1、熟悉c+中类的概念,类的封装,继承和多态的实现方式。 2、了解系统开发的需求分析,类层次设计,模块分析,编码测试,模块组 装和与整体调试的全过程。 3、逐步熟悉程序设计的方法,并养成良好的编程习惯。 二、实习内容 1、设计说明与要求: (1)说明: 公司主要有4类人员:经理,技术员,销售员,销售经理。要求存储这些人的职工号,姓名,月工资,岗位,年龄,性别等信息。 工资的计算方法: 经理:固定月薪为8000; 技术员:工作时间*小是工资(100元每小时); 销售员:销售额*4%提成; 销售经理:底薪(5000)+所辖部门销售额总额*0.5%; (2)要求: a输入数据要求每类人员不能少于4人,并按统一格式输出格式输出; b实现的功能: (1)数据录入:用键盘输入各类员工的数据; (2)数据统计:统计各销售经理下属销售员的销售额及销售额之和;销售经理按工资进行冒泡排序; (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 <iostream> #include <cstdlib> #include<fstream> #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" cout<<" 请选择一个操作: " cin>>operate; switch(operate) case 1: cout<<"请输入数据:"<<endl; cout<<"正在输入数据."<<endl; set (z); break; case 2: cout<<"请等待."<<endl; if(z=0) 5 fengzhanhuaer 小型公司工资管理系统 第 6 页 cout<<" 警告!操作无法完成!请先输入员工信息!"<<'a'<<endl;/新增了录入错误警告功能,且发出响铃.防止错误操作 break; cout<<"正在进行数据统计."<<endl; count(); break; case 3: cout<<"请等待."<<endl; if(z=0) cout<<" 警告!操作无法完成!请先输入员工信息!"<<'a'<<endl; break; cout<<"正在进行数据打印."<<endl; output(); ; break; case 4: cout<<"请等待."<<endl; if(z=0) 6 fengzhanhuaer 小型公司工资管理系统 第 7 页 cout<<" 警告!操作无法完成!请先输入员工信息!"<<'a'<<endl; break; cout<<"正在进行数据备份."<<endl; backup(); break; case 5: exit(0); break; default: cout<<"错误!请重新选择1-5间的数输入"<<'a'<<endl<<endl; break; while(1); cout<<"退出菜单,回到主程序继续向下执行"<<endl; 功能函数.h文件 #include"类体.h" #include<fstream> 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,并按回车 "<<endl; cout<<" "<<endl; cout<<" cout<<" 请选择一个操作: " cin>>i; switch(i) case 1: int k; k=0; while(k<2) ck.input4(); k+; 8 fengzhanhuaer 小型公司工资管理系统 第 9 页 break; case 2: int j; j=0; while(j<2) aj.input1(); j+; break; case 3: int l; l=0; while(l<4) dl.input3(); l+; int m,n,a; for(n=0;n<2;n+) a=0; for(m=0;m<4;m+) if(d0.onum2()=bn.onum() 9 fengzhanhuaer 小型公司工资管理系统 第 10 页 a=d0.osell()+a; bn.set(a); break; case 4: int o; o=0; while(o<2) bo.input2(); o+; break; case 5: break; default : cout<<"错误!请重新输入15之间的数"<<'a'<<endl<<endl; 10 fengzhanhuaer 小型公司工资管理系统 第 11 页 while(i!=5); x+; return 0; void count() int i; i=0; int k; xsy h2; while(i<2) k=0; for(int j=0;j<5;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; cout<<endl; "<<endl;/ cout<<" 表格不在类体中设置是考虑到类的通用性问题 cout<<" "<<" 职工号 "<<""<<" 姓名 "<<""<<" 销售额(元)"<<""<<endl; cout<<setiosflags(ios:right)<<" "<<endl; cout<<" "<<setw(12)<<h0.onum()<<""<<setw(10)<<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) <<a<<""<<endl; cout<<" "<<endl; cout<<endl; i+; xsjl e; for(int q=0;q<1;q+) for(int w=0;w<1-q;w+) if(bw.oincome()<bw+1.oincome() e=bw;bw=bw+1;bw+1=e; 12 fengzhanhuaer 小型公司工资管理系统 第 13 页 cout<<"销售经理按工资排序为:"<<endl; cout<<endl; cout<<" "<<endl; cout<<setiosflags(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()<<""<<setw(10)<<b1.oage()<<""<<setw(10)<<b1.oincome()<<""<<endl; cout<<" "<<endl; void output() cout<<" 职工基本情况一览表如下:"<<endl<<endl; cout<<" 技术员:"<<endl<<endl; 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; cout<<" "<<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; cout<<endl; cout<<" 经理:"<<endl<<endl; 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; 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; cout<<endl; cout<<" 销售经理:"<<endl<<endl; cout<<" "<<endl; cout<<" "<<" 职工号 "<<""<<" 姓名 "<<""<<" 性别 "<<""<<" 年龄 "<<""<<" 工资 "<<""<<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()<<""<<setw(10)<<b1.oage()<<""<<setw(10)<<b1.oincome()<<""<<endl; cout<<" "<<endl; cout<<endl; cout<<" 销售员:"<<endl<<endl; cout<<" "/受窗口大小的限制此处正好为一行,故不用加endl cout<<" "<<"职工号"<<""<<" 姓名 "<<""<<" 性别 "<<""<<" 年龄 "<<""<<" 工资 "<<""<<"所属部门经理编号"<<"" 15 fengzhanhuaer 小型公司工资管理系统 第 16 页 cout<<" " cout<<" "<<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.oincome()<<""<<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<<" " cout<<endl; void backup() 16 fengzhanhuaer 小型公司工资管理系统 第 17 页 fstream backup; backup.open("c:备份.txt",ios:in|ios:out|ios:trunc); backup<<" 职工基本情况一览表如下:"<<endl<<endl; backup<<" 技术员:"<<endl<<endl; 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.oincome()<<""<<endl; backup<<" "<<endl; backup<<endl; backup<<" 经理:"<<endl<<endl; 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.osex()<<""<<setw(10)<<c1.oname()<<""<<setw(10)<<c1.oage()<<""<<setw(10)<<c1.oincome()<<""<<endl; backup<<" "<<endl; backup<<endl; backup<<" 销售经理:"<<endl<<endl; 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)<<b1.onum()<<" "<<setw(10)<<b1.osex()<<""<<setw(10)<<b1.oname()<<""<<setw(10)<<b1.oage()<<""<<setw(10)<<b1.oincome()<<""<<endl; backup<<" "<<endl; backup<<endl; 18 fengzhanhuaer 小型公司工资管理系统 第 19 页 backup<<" 销售员:"<<endl<<endl; backup<<" "<<endl; backup<<" "<<"职工号"<<""<<" 姓名 "<<""<<" 性别 "<<""<<" 年龄 "<<""<<" 工资 "<<""<<"所属部门经理编号"<<""<<endl; backup<<" "<<endl; backup<<" "<<setw(6)<<d0.onum()<<" "<<setw(8)<<d0.osex()<<""<<setw(8)<<d0.oname()<<" "<<setw(8)<<d0.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.onum2()<<""<<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; backup<<endl; backup.close; 类体.h文件 #include<iomanip> #include<string> using namespace std; class gy /基类 public: void input() 请输入雇员职工号: " cin >>num; cout<<setw(40)<<"请输入雇员姓名(请简写到十个字母以内): " cin>>name; cout<<setw(40)<<"请输入雇员性别(m/w): " cin>>sex; cout<<setw(40)<<"请输入雇员年龄: " cin>>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 num; string name; string age; string sex; ; class jsy :public gy /技术员类 public: void input1() cout<<"请输入技术员信息"<<endl; gy:input(); cout<<setw(40)<<"请输入技术员工作时间: " cin>>time; income =time*100; oincome()return income; int protected : int time; ; class jl : public gy /经理类 public : void input4() cout<<"请输入经理信息"<<endl; gy:input(); income=0; 21 fengzhanhuaer 小型公司工资管理系统 第 22 页 int oincome()income=8000; return income; ; class xsy:public gy /销售员类 public : void input3() cout<<"请输入销售员的信息"<<endl; gy:input(); 请输入雇员销售额: " cin>>sell; cout<<setw(40)<<"请输入所属的销售经理编号: " cin>>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; ; 三、设计思路 本程序开

    注意事项

    本文(小型公司工资管理系统报告.doc)为本站会员(叶***)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

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

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开