欢迎来到课桌文档! | 帮助中心 课桌文档-建筑工程资料库
课桌文档
全部分类
  • 党建之窗>
  • 感悟体会>
  • 百家争鸣>
  • 教育整顿>
  • 文笔提升>
  • 热门分类>
  • 计划总结>
  • 致辞演讲>
  • 在线阅读>
  • ImageVerifierCode 换一换
    首页 课桌文档 > 资源分类 > DOCX文档下载  

    某小型公司的工资管理系统实训报告.docx

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

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

    某小型公司的工资管理系统实训报告.docx

    某小型公司的工资管理系统实训报告题目:小型公司的工资管理系统>00X0指导老师:XXX班级:学号:时间:学生姓名:XXX计 YXXXXXXXXXXXXXXXXXX年X月X日目录一、实训内容与目的2二、设计分析3三、执行结果与结果分析23四、实训总结27实训内容:小型公司的工资管理设计任务编写一个小型公司的工资管理程序。该公司要紧有4类人员:经理、兼职技术人员、销售员与销售经理。其中月薪计算方法为:经理固定月薪8000元,兼职技术如愿100元/小时,销售员为当月销售额的4%,销售经理保底工资5000元另加所管部门销售额的5%。设计要求(1)职工编号自动产生(从IoOo起编号)。(2)将公司人员的编号、姓名与月薪等信息储存在文件中,然后从文件中读入这些信息并显示。假如访问文件失败,使用特殊处理机制解决。(3)设计输入,输出的界面。(成绩为优良,需使用MFC方式。若设计困难能够使用DOS方式)二、设计分析:(1)类的定义:1、“employee.il”#include<iostream.h>#iIIdUdeViOmanip.h>#include<stdio.h>#include<string.h>#include<fstream.h>#include<tchar.h>classemployee(public:employee();doublegerno();char*getname();char*gerpost();doublegetsalary();virtualdoublepay()=O;employee(doublen9charmingzi20,doubles)(number=n;strcpy(name,mingzi);iIicome=S;)-employee。;protected:doublenumber;charname20;charpost2l;doubleincome;);classTechnician:publicemployee(protected:doublehour;doubleper;public:doubleSet_hour();doublepay(););classSalemanzvirtualpublicemployee(protected:doubleSaIary;销售额public:voidsale();doublepay();classManager:virtualpublicemployee(protected:public:doublepay();classSalesmanagerzvirtualpublicManager9VirtualpublicSaleman(public:doublepay(););structperson(intgonghao;charXingming20;charzhiweif20;floatshouru;floatxiaoshi;);voidsaverenshu();intreadrenshu();voiddeletgon(intx);voiddeletname(intx);voidread(intx);voidxiugai-all(intx);voidsavetech(intx,char*y,char*z,floate,oatho);voidsave(intx,char*y,char*z,floate);(2) ,change.cppwncludeemployee.h',intk;voidsave(intx9char*y,char*z,floate)储存文件(structpersona;a.gonghao=x;strcpy(a.xingming,y);strcpy(a.zhiwei,z);a.shouru=e;cout<<*,工号:,<<a.gonghao<<n,<<n姓名:,'<<a.xingming<<,'<<''职位:,<<a.zhiwei<<,<<',IS:H«a.shouru«n,<<endl;fstreamcun;ClIn.open(''储存人员.txt”,ios:app|ios:oiit);if(!cun)(cout<<,cannotopenfile,<<endl;)cun<<a.gonghao<<endl;cun<<a.zhiwei<<endl;cun<<a.xingming<<endl;cun<<a.shouru<<endl;cun.close();)voidsavetech(intx,char*y,char*z,floate,floatho)专用于技术员的储存structpersona;a.gonghao=x;strcpy(a.xingming,y);strcpy(a.zhiwei9z);a.shouru=e;a.xiaoshi=ho;cout<<n工号:,<<a.gonghao<<n"<<,1姓名:,<<a.xingming<<,<<,'职位:,<<a.zhiwei<<,工作小时:,<<a.xiaoshi<<n,<<a,shouru<<,<<endl;fstreamcun;Clln.open("储存人员.txt'',ios=appios:OlIt);if(!cun)cout<<,cannotopenfile,<<endl;cun<<a.gonghao<<endl;cun<<a.zhiwei<<endl;cun<<a.xingming<<endl;cun<<a.xiaoshi<<endl;cun<<a.shouru<<endl;cun.close();)voidsaverenshu()储存在职总人数,以便读取数据(fstreamcun;Ciln.open(''个数.txt'',ios:trunc|ios:in);if(!cun)(cout<<cannotopenfile,<<endl;)cun<<k<<endl;cun.close();)intreadrenshu()读取在职总人数(fstreamcun;CIIlI.open(''个数.txt'ios:inios:Oilt);if(!cun)(cout<<,cannotopenfi)e,<<endl;)cun>>k;returnk;)voidread(intx)读取在职人员信息,参数X为总人数(jf(=O)(COUtVV”还没有任何人员的信息,请先添加人员的信息!”<vendl;)structpersona30;fstreamcun;inti=0;CIln.open("储存人员.txt”,ios:in|ios:OlIt);if(!cun)cout<<,cannotopenfile,<<endl;while(i<x)(cun>>ai.gonghao;cun>>afi.zhiwei;cun>>ai.xingming;1我§立5(2国.2加3d,"技术员'')=0)(cun>>ai.xiaoshi;cun>>ai.shouru;if(strcmp(ai.zhiwei,”技术员")=0)(CoIltVV”工号:,<<aij.gonghao<<,"v<”姓名:,<<ai.xingming<<,<<n职位:M«ai.zhiwei«H工作小时,<<ai.xiaoshi<<,<<n工资:"«ai.shouru«nt,<<endl;)else(COIltVV”工号:n<<ai.gonghao<<n"«aiJ.xingming«M,<<h职位:”<vai.zhiwei<v""<v"工资:n<<aiJ.shouru<<n<<endl;)i+;)cun.close();)voiddeletgon(intx)按工号删除函数,参数X为总人数(if(x=O)(Colltv<”没有任何员工的信息,请先增加员工的信息”<vendl;structpersonal301;structpersona2301;fstreamcun;inti=0;Ciln.open(''储存人员.txt'',ios:in|ios:out);if(!cun)(cout<<,cannotopenfile*'<<endl;)while(i<x)cun>>ali.gonghao;cun>>ali.zhiwei;cun>>ali.xingming;if(strcmp(alij.zhiwei,n技术员,)=0)(cun>>ali.xiaoshi;cun>>al11.shouru;£(§丘5(21国.2111、¥£入"技术员'')=0)(COiItVV”工号:H«aliJ.gonghao«H:,<<alij.xingming<<,'<<职位:,<<ali.zhiwei<<,工作小时,<<ali.xiaoshi<<,<<m工资:"«ali.shouru«n,<<endl;)else(COIltVV”工号:H«ali.gonghao«H,<<ali.xingming<<,<<职位:n<<aliJ.zhiwei<<,"<<,IS:,<<ali.shouru<<,<<endl;)i+;)cun.close();IiiiiiiiiiiiiiiiiiiiCOUtV<"请输入要删除人员的工号:"v<endl;intg;cin>>g;i=0;while(g!=alil.gonghao)(i+;)if(g!=ali.gonghao)(COUtVV"没找到!"<vendl;)else(g=i;for(i=0;i!=g;i+)(a2i.gonghao=ali.gonghao;strcpy(a2i.zhiwei,alizhiwei);strcpy(a2i.xingming9ali.xingming);if(strcmp(ali.zhiwei,“技术员”)=0)a2i.xiaoshi=ali.xiaoshi;a2i.shouru=ali.shouru;)for(i;i<x;i+)(a2il.gonghao=ali+l.gonghao;strcpy(a2i.zhiwei,ali+l.zhiwei);strcpy(a2i.xingming,a1i+1xingming);if(strcmp(ali+ILZhiWeiJ技术员")=0)(a2i.xiaoshi=ali+l.xiaoshi;)a2i.shouru=ali+l.shouru;)for(intl=0;l<(x-l);!+)(if(strcmp(a2l.zhiweij技术员'')=0)(COUtVV”工号:M«a2lJ.gonghao«M:,<<a2lj.xingming<<,<<,职位:,<<a2l.zhiwei<<工作小时,<<a2l.xiaoshi<<h<<m工资:H«a2fl.shouru«H<<endl;elseColItVV”工号:,<<a2l.gonghao<<n<<<,g:,<<a2l.xingming<<,'"<<”职位:M«a2l.zhiwei«Hn<<,lS:”vva2l.shouruvv"”<vendl;fstreamcunl;i=0;CiInLOPeI(''储存人员.txt",ios:tninc);if(!cunl)cout<<,cannotopenfile,<<endl;while(i<(x-l)cunl<<a2fi.gonghao<<endl;cunl<<a2il.zhiwei<<endl;cunl<<a2fi.xingming<<endl;if(strcmp(a2i.zhiwei9't技术员,)=0)cunl<<a2i.xiaoshi<<endl;cunl<<a2f11.shouru<<endl;i+;)cunl.close();fstreamcun2;CiIn2.open(''个数.txt”,ios:tmnc|ios:in);if(!cun2)(cout<<,cannotopenfile,'<<endl;)cun2<<(x-l)<<endl;CoUtV<"成功删除一个员工的数据"VVend1;cun2.close();)voiddeletname(intx)按姓名删除函数,参数X为总人数(if(x=O)(COIltVV”没有任何员工的信息,请先增加员工的信息”<vendl;)structpersonal30;structpersona230;fstreamcun;inti=0;CiIlI.open(''储存人员.txt”,ios:in|ios:Ollt);if(!cun)(cout<<,cannotopenfi)e,<<endl;)while(i<x)(cun>>alfil.gonghao;cun>>alfil.zhiwei;cun>>ali.xingming;if(strcmp(alizhiwei,”技术员")=0)(cun>>ali.xiaoshi;)cun>>al11.shouru;if(strcmp(ali.zhiweij技术员'')=0)COlltVV”工号:,<<ali.gonghao<<,<<ali.xingming<<n,<<职位:,<<ali.zhiwei<<,工作小时M«ali.xiaoshi«Hh<<m工资:,'<<ali.shouru<<n<<endl;)else(CoUtVV”工号:H«ali.gonghao«HM«aliJ.xingming«H,<<职位:M«ali.zhiwei«H,<<ali.shouru<<n,'<<endl;)i+;)cun.close();IiiiiiiiiiiiiiiiiiiiCOiItVV”请输入要删除人员的姓名:n<<endl;charxing20;cin>>xing;hitg;i=0;while(strcmp(xing,ali.xingmmg)(i+;)g=i;for(i=0;i!=g;i+)(a2i.gonghao=ali.gonghao;strcpy(a2i.zhiwei,ali.zhiwei);strcpy(a2i.xingming,ali.xingming);if(strcmp(alizhiweij技术员'')=0)(a2i.xiaoshi=ali.xiaoshi;)a2i.shouru=ali.shouru;)for(i;i<x;i+)(a2i.gonghao=ali+l.gonghao;strcpy(a2i.zhiwei9ali+l.zhiwei);strcpy(a2i.xingming9a1i+1xingming);if(strcmp(ali+lJ.zhiwei,Mn)=)(a2i.xiaoshi=ali+l.xiaoshi;)a2i.shouru=ali+l.shouru;£(§丘5(221.23、¥£1,"技术员'')=0)(COlItVV”工号:n<<a2l.gonghao<<n<<<,g:n«a2l.xingming«Mn<<,K位:H«a2l.zhiwei«H工作小时,<<a2lj.xiaoshi<<,n<<a2l.shouru<<,"<<endl;)else(COIltVV”工号:H«a2l.gonghao«H,<<a2lj.xingming<<,',<<t,职位:M«a2l.zhiwei«H,<<nlS:n<<a2l.shouru<<,<<endl;)fstreamcunl;i=0;CIInLOPen(''储存人员.txt'',ios:trunc);if(!cunl)(cout<<,cannotopenfile,<<endl;)while(i<(x-l)(cunl<<a2i.gonghao<<endl;cunl<<a2i.zhiwei<<endl;cunl<<a2fi.xingming<<endl;if(strcmp(a2izhiweiJ技术员'')=0)(cunl<<a2fi.xiaoshi<<endl;)cunl<<a2i.shouru<<endl;i+;)cunl.close();fstreamcun2;CIln2.open(''个数.txt'',ios:trunc|ios:iii);if(!cun2)(cout<<,cannotopenfile,<<endl;cun2<<(x-l)<<endl;COUtVV”成功删除一个员工的数据"v<endl;cun2.close();)voidxiugai_all(intx)修改一条记录的内容,参数X为总人数(structpersonal30;structpersona230;fstreamcun;inti=0;CiIiI.open(''储存人员.txt”,ios:iii|ios:out);if(!cun)(cout<<,cannotopenfi)e,<<endl;)while(i<x)(cun>>alfil.gonghao;cun>>alfil.zhiwei;cun>>ali.xingming;if(strcmp(ali.zhiwei,n技术员,)=0)(cun>>ali.xiaoshi;)cun>>al11.shouru;if(strcmp(ali.zhiweij技术员'')=0)(ColltVV”工号:H«ali.gonghao«H,«ali.xingming«M,<<职位:,<<ali.zhiwei<<,工作小时,<<alij.xiaoshi<<h<<m工资:,'<<ali.shouru<<n<<endl;)else(COUtVV”工号:n<<ali.gonghao<<,*,<<alij.xingming<<,',<<职位:M«ali.zhiwei«M"<<,'Is,<<alij.shouru<<n,'<<endl;)i+;)intg,gonghaol;charxingmingl20,zhiweil20;floatshourul,xiaoshil;COUtV<"请输入要修改员工的工号:"v<endl;cin>>g;i=0;while(g!=ali.gonghao)i+;)g=i;for(i=0;i!=g;i+)(a2i.gonghao=ali.gonghao;strcpy(a2i.zhiwei9ali.zhiwei);strcpy(a2i.xingming9ali.xingming);£(§丘5(21国.2111、¥£入"技术员")=0)(a2i.xiaoshi=ali.xiaoshi;)a2i.shouru=ali.shouru;CoIltVV”请重新输入工号:,<<endl;cin>>gonghaol;a2i.gonghao=gonghaol;COUtVV”请重新输入姓名:,<<endl;cin>>xingmingl;strcpy(a2i.xingming,xingmingl);COUtVV”请重新输入职位:,<<endl;cin>>zhiweil;strcpy(a2i.zhiwei,zhiweil);if(StrCmP(ZhiWeilj技术员")=0)(CoUtVV”请重新输入工作小时数:n<<endl;cin>>xiaoshil;a2i.xiaoshi=xiaoshil;COUtVV”请重新输入月收入:,v<endl;cin>>shourul;a2i.shouru=shourul;if(strcmp(a2i.zhiweit技术员,')=0)(CoUtVV”工号:H«a2i.gonghao«M:,«a2iJ.xingming«M,<<,MR<:,<<a2i.zhiwei<<工作小时:n<<a2i.xiaoshi<<n”v<”工资:M«a2iJ.shouru«H"<<endl;)else(COIltVV”工号:,<<a2i.gonghao<<,<<a2ij.xingming<<,',<<,职位:M«a2i.zhiwei«H,<<,IS:n<<a2i.shouru<<,<<endl;i=i+l;for(i;i<x;i+)(a2i.gonghao=ali.gonghao;strcpy(a2i.zhiwei,ali.zhiwei);strcpy(a2i.xingming,ali.xingming);if(strcmp(a2izhiweij技术员'')=0)(a2i.xiaoshi=ali.xiaoshi;)a2i.shouru=ali.shouru;)fstreamcunl;i=0;CIlIlLoPen(''储存人员txt'',iosktrmc);if(!cunl)(cout<<,cannotopenfile*'<<endl;)while(i<x)(cunl<<a2fil.gonghao<<endl;cunl<<a2fi.xingming<<endl;cunl<<a2il.zhiwei<<endl;if(strcmp(a2i.zhiweij技术员")=0)(cunl<<a2il.xiaoshi<<endl;cunl<<a2fi.shouru<<endl;i+;)cun.close();)(3) “employee.cpp”#include"employeeh”#include<iostream.h>#include<iomanip.h>#include<string.h>#include<stdio.h>#include<stdlib.h>#include<fstream.h>doubleemployee:gerno()(cout<<”请输入工号"VVendl;cin>>number;returnnumber;)char*employee:getname()(COUtV<"请输入姓名,<<endl;cin>>name;returnname;)char*employee:gerpost()COUtVV”请输入职位"vvendl;cin>>post;returnpost;)IiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiidoubleTechnician:pay()(income=30*100*hour;returnincome;)doubleTechnician:Set_hour()(CoUtVV”工作时间:n;cin>>hour;returnhour;)IiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiivoidSaleman:sale()当月销售额CoiItVV”请输入当月销售额“<vendl;cin>>salary;)doubleSaleman:pay()(income=salary*0.04;returnincome;)IiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiidoubleManager:pay()income=8000;returnincome;)IiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiidoubleSalesmanager:pay()(income=5000+salary*0.05;returnincome;)(3)“employee.cpp”ncludeemployee.h',#include<iostream.h>#include<iomanip.h>#include<string.h>#include<stdio.h>#include<stdlib.h>#include<fstream.h>doubleemployee:gerno()(COiItVV”请输入工号"<vendl;cin>>number;returnnumber;)char*employee:getname()COIltVV”请输入姓名”<vendl;cin>>name;returnname;)char*employee:gerpost()(COiItVV”请输入职位”<vendl;cin>>post;returnpost;)doubleTechnician:pay()(income=30*100*hour;returnincome;)doubleTechnician:Set_hour()CoUtVV”工作时间:”;cin>>hour;returnhour;)IiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiivoidSalemanusaleO当月销售额COUtVV”请输入当月销售额“<vendl;cin>>salary;)doubleSalemanupayO(income=salary*0.04;returnincome;)doubleManager:pay()(income=8000;returnincome;)IiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiidoubleSalesmanager:pay()(income=5000+salary*0.05;returnincome;)(4)wgzgl.cppwinclude,employee.h"#include<string.h>#include<stdio.h>#include<stdlib.h>#include<fstream.h>#include<iomanip.h>#include<iostream.h>#include<fstream.h>intIntputMenuQ;voidreadmenu();intdeletmenu();intxiugaimenu();intShowmenu();intai;externintk;voidmain()(Showmenu();)intShowmenu()intnu;nu=readrenshu();while(l)(cout<<endl;cout<<ncout<<cout<<小型公司工资管理系统',<<endl;IIWCiiui,请选择您所需要的操作:Iyvendl;cout<<nI数据录入:1,并按回车键I-<<endl;cout<<nI删除数据:2,并按回车键I,<<endl;cout<<I修改数据:,并按回车键I,<<endl;cout<<I读入数据:4,并按回车键I"<<endl;cout<<nI退出系统:5,并按回车键I<<endl;cout<<I1,<<endl;cout<<endl<<endl<<endl;cout<<”请选择一个操作:,;cin>>ai;switch(ai)(case 1: IntputMenu();break;case2:deletmenu();break;case3:XilIgaimenlI();break;case4:readmenu();break;case5:returnO;break;default:COUtVV"你的选择出错了!请重新输入吧!"vvendl;)intdeletmenu()while(l)intr;r=readrenshu();cout<<endl;CoIItVv”小型公司工资管理系统',<<endl;cout<<nI1,<<endl;coutvv”I请选择您所需要的操作:I'<<endl;cout<<tI按工号删除:1,并按回车键I<<endl;cout<<I按姓名删除:2,并按回车键I,<<endl;cout<<nI返回上一层:3,并按回车键I<<endl;cout<<n11,'<<endl;cout<<endl<<endl<<endl;cout<<”请选择一个操作:”;cin>>ai;switch(ai)(caseX:deletgon(r);break;case2:deletname(r);break;case3:returnO;break;default:COUtVV"你的选择出错了!请重新输入吧!"<vendl;)voidreadmenu()(intr;r=readrenshu();read(r);)intxiugaimenu()(while(l)(intr;r=readrenshu();cout<<endl;cout«M小型公司工资管理系统,<<endl;cout<<I1',<<endl;cout<<I请选择您所需要的操作:I,<<endl;cout<<nI修改工号:1,并按回车键I,<<endl;COIItVv”I修改姓名:2,并按回车键IkVelld1;cout<<,I修改职位:3,并按回车键i,<<endl;cout<<i修改全部:4,并按回车键i,<<endl;cout<<nI返回上一层:5,并按回车键I,<<endl;cout<<11"<<endl;cout<<endl<<endl<<endl;ColItVV”请选择一个操作:”;cin>>ai;switch(ai)(/casel:deletgon(r);break;/case2:deletname(r);break;case4:xiugai_all(r);break;case5:returnO;break;default:COUtVV"你的选择出错了!请重新输入吧!"vvendl;)intIntputMenuQcout<<l小型公司工资管理系统*7kven<11;cout<<ncout<<I请选择您所需要的操作I,<<endl;cout<<nI经理数据输入:1,并按回车键I,<<endl;cout<<I技术员数据输入:2,并按回车键I<<endl;cout<<nI销售员数据输入:3,并按回车键I,<<endl;cout<<I销售经理数据输入:4,并按回车键I,<<endl;cout<<nI返回上一层:5,并按回车键I,<<endl;cout<<1,<<endl;CoiIt<<”请选择一个操作:”;cin>>ai;switch(ai)case1:(Managerjingli;doublea;char*b,*c;doubled;a=jingli.gerno();b=jingli.gerpost();c=jinglLgetname();d=jingli.pay();save(a,c,b,d);CoUtv<”已经成功储存啦!,'vvendl;k÷+;saverenshu();break;case 2: Technicianjishu;doublea;char*b,*c;doubled,f;a=jishu.gerno();b=jishu.gerpost();c=jishu.getname();f=jishu.Set_hour();d=jishu.pay();savetech(a,c,b,d,f);COUtVV”已经成功储存啦!"vvendl;k+;saverenshu();break;)case3:Salemanxiaoshou;inta;char*b,*c;floatd,f;a=xiaoshou.gerno();b=xiaoshou.gerpost();c=xiaoshou.getname();xiaoshou.sale();d=xiaoshou.pay();save(a,c,b,d);ColltVV”已经成功储存啦!"vvendl;k+;saverenshu();break;)case 4:(

    注意事项

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

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




    备案号:宁ICP备20000045号-1

    经营许可证:宁B2-20210002

    宁公网安备 64010402000986号

    课桌文档
    收起
    展开