首页 用C++编程——小型公司工资管理系统

用C++编程——小型公司工资管理系统

举报
开通vip

用C++编程——小型公司工资管理系统用C++编程——小型公司工资管理系统#include<iostream>#include<string>#include<iomanip>#include<fstream>usingnamespacestd;constintn=2;classEmployee{protected:intnum;stringname;intage;charsex;doublesalary;public:Employee(intn=0,inta=0,doublesa...

用C++编程——小型公司工资管理系统
用C++编程——小型公司工资管理系统#include<iostream>#include<string>#include<iomanip>#include<fstream>usingnamespacestd;constintn=2;classEmployee{protected:intnum;stringname;intage;charsex;doublesalary;public:Employee(intn=0,inta=0,doublesa=0){num=n;age=a;salary=sa;}virtualvoidinput();virtualvoidprint(){};virtualvoidtxtout(){};intfunnum(){returnnum;}stringfunname(){returnname;}};voidEmployee::input(){cout<<"编号:";cin>>num;cout<<"其姓名:";cin>>name;cout<<"性别(w/m):";cin>>sex;cout<<"年龄:";cin>>age;}classTechnician:publicEmployee{protected:inthours;inthourlypay;public:Technician(inthp=100){hourlypay=hp;}virtualvoidinput();virtualdoublepay(){return(salary=hours*hourlypay);}virtualvoidprint();virtualvoidtxtout();};voidTechnician::input(){cout<<"技术员的";Employee::input();cout<<"工作时间:";cin>>hours;}classManager:publicEmployee{public:Manager(doublesa=8000){salary=sa;}virtualvoidinput();virtualvoidprint();virtualvoidtxtout();};voidManager::input(){cout<<"经理的";Employee::input();}classSalesman:publicEmployee{protected:doublecommrate;//提成intSmnum;//所属经理的编号doublesales;//销售额public:Salesman(doublecom=0.04){commrate=com;}virtualvoidinput();virtualdoublepay(){return(salary=sales*commrate);}virtualvoidprint();virtualvoidtxtout();intfunnum1(){returnSmnum;}doublefunsales(){returnsales;}};voidSalesman::input(){cout<<"销售员的";Employee::input();cout<<"销售额:";cin>>sales;cout<<"所属销售经理的编号:";cin>>Smnum;}classSalesmanager:publicEmployee{protected:doublebasepay,sumsales,commrate;//底薪,销售总额,提成public:Salesmanager(doublebase=5000,doublecom=0.005){basepay=base;commrate=com;}virtualvoidinput();virtualvoidprint();virtualvoidprint1();virtualvoidpay();virtualvoidshujutongji();virtualvoidtxtout();};Techniciantec[n];Managerman[n];Salesmansal[2*n];Salesmanagersma[n];//定义全局变量voidSalesmanager::input(){cout<<"销售经理的";Employee::input();}voidSalesmanager::pay(){for(inti=0;i<n;i++){sma[i].sumsales=0;for(intj=0;j<2*n;j++){if(sal[j].funnum1()==sma[j].num)sma[j].sumsales=sma[j].sumsales+sal[j].funsales();}sma[i].salary=basepay+sma[i].sumsales*commrate;}}voidSalesmanager::print(){for(inti=0;i<n;i++){sma[i].sumsales=0;cout<<"职工编号为"<<sma[i].num<<"销售经理"<<sma[i].name<<"下属销售员的业绩为:"<<endl;cout<<"???????????????????"<<endl;cout<<"?职工号?姓名?销售额?"<<endl;for(intj=0;j<2*n;j++)if(sal[j].funnum1()==sma[i].num){sma[i].sumsales=sma[i].sumsales+sal[j].funsales();cout<<"???????????????????"<<endl;cout<<"?"<<setw(10)<<sal[j].funnum()<<"?"<<setw(10)<<sal[j].funname()<<"?"<<setw(10)<<sal[j].funsales()<<"?"<<endl;}cout<<"???????????????????"<<endl;cout<<"?销售额总计?"<<setw(22)<<sma[i].sumsales<<"?"<<endl;cout<<"???????????????????"<<endl;}}voidSalesmanager::shujutongji(){for(inti=0;i<n;i++){sma[i].sumsales=0;for(intj=0;j<2*n;j++){if(sal[j].funnum1()==sma[i].num)sma[i].sumsales+=sal[j].funsales();}sma[i].salary=basepay+sma[i].sumsales*commrate;}for(intk=0;k<n-1;k++)for(intm=k+1;m<n;m++)if(sma[k].salary<sma[m].salary){Salesmanagersma1;sma1=sma[k];sma[k]=sma[m];sma[m]=sma1;}cout<<"销售经理按工资排序为:"<<endl;cout<<"??????????????????????????"<<endl;cout<<"?职工号?姓名?性别?年龄?工资?"<<endl;for(inte=0;e<n;e++){cout<<"??????????????????????????"<<endl;cout<<"?"<<setw(8)<<sma[e].num<<"?"<<setw(8)<<sma[e].name<<"?"<<setw(8)<<sma[e].sex<<"?"<<setw(8)<<sma[e].age<<"?"<<setw(8)<<sma[e].salary<<"?"<<endl;}cout<<"??????????????????????????"<<endl;}voidTechnician::print(){cout<<"??????????????????????????"<<endl;cout<<"?职工号?姓名?性别?年龄?工资?"<<endl;for(inti=0;i<n;i++){cout<<"??????????????????????????"<<endl;cout<<"?"<<setw(8)<<tec[i].num<<"?"<<setw(8)<<tec[i].name<<"?"<<setw(8)<<tec[i].sex<<"?"<<setw(8)<<tec[i].age<<"?"<<setw(8)<<tec[i].pay()<<"?"<<endl;}cout<<"??????????????????????????"<<endl;}voidManager::print(){cout<<"??????????????????????????"<<endl;cout<<"?职工号?姓名?性别?年龄?工资?"<<endl;for(inti=0;i<n;i++){cout<<"??????????????????????????"<<endl;cout<<"?"<<setw(8)<<man[i].num<<"?"<<setw(8)<<man[i].name<<"?"<<setw(8)<<man[i].sex<<"?"<<setw(8)<<man[i].age<<"?"<<setw(8)<<man[i].salary<<"?"<<endl;}cout<<"??????????????????????????"<<endl;}voidSalesman::print(){cout<<"????????????????????????????????????"<<endl;cout<<"?职工号?姓名?性别?年龄?工资?所属部门经理编号?"<<endl;for(inti=0;i<2*n;i++){cout<<"????????????????????????????????????"<<endl;cout<<"?"<<setw(8)<<sal[i].num<<"?"<<setw(8)<<sal[i].name<<"?"<<setw(8)<<sal[i].sex<<"?"<<setw(8)<<sal[i].age<<"?"<<setw(8)<<sal[i].pay()<<"?"<<setw(18)<<sal[i].funnum1()<<"?"<<endl;}cout<<"????????????????????????????????????"<<endl;}voidSalesmanager::print1()//{cout<<"??????????????????????????"<<endl;cout<<"?职工号?姓名?性别?年龄?工资?"<<endl;for(inti=0;i<n;i++){cout<<"??????????????????????????"<<endl;cout<<"?"<<setw(8)<<sma[i].num<<"?"<<setw(8)<<sma[i].name<<"?"<<setw(8)<<sma[i].sex<<"?"<<setw(8)<<sma[i].age<<"?"<<setw(8)<<sma[i].salary<<"?"<<endl;}cout<<"??????????????????????????"<<endl;}voidTechnician::txtout()//技术员数据备份{ofstreamoutfile("d:\output.txt",ios::app);if(!outfile){cout<<"备份失败!"<<endl;}outfile<<"*************公司职员信息备份****************"<<endl;outfile<<"*****技术员信息*****"<<endl;outfile<<"??????????????????????????"<<endl;outfile<<"?职工号?姓名?性别?年龄?工资?"<<endl;for(inti=0;i<n;i++){outfile<<"??????????????????????????"<<endl;outfile<<"?"<<setw(8)<<tec[i].num<<"?"<<setw(8)<<tec[i].name<<"?"<<setw(8)<<tec[i].sex<<"?"<<setw(8)<<tec[i].age<<"?"<<setw(8)<<tec[i].pay()<<"?"<<endl;}outfile<<"??????????????????????????"<<endl;outfile<<"********************************************"<<endl;}voidManager::txtout()//经理数据备份{ofstreamoutfile("d:\output.txt",ios::app);if(!outfile){cout<<"备份失败!"<<endl;}outfile<<"*****经理信息*****"<<endl;outfile<<"??????????????????????????"<<endl;outfile<<"?职工号?姓名?性别?年龄?工资?"<<endl;for(inti=0;i<n;i++){outfile<<"??????????????????????????"<<endl;outfile<<"?"<<setw(8)<<man[i].num<<"?"<<setw(8)<<man[i].name<<"?"<<setw(8)<<man[i].sex<<"?"<<setw(8)<<man[i].age<<"?"<<setw(8)<<man[i].salary<<"?"<<endl;}outfile<<"??????????????????????????"<<endl;outfile<<"********************************************"<<endl;}voidSalesmanager::txtout()//销售经理数据备份{ofstreamoutfile("d:\output.txt",ios::app);if(!outfile){cout<<"备份失败!"<<endl;}outfile<<"*****销售经理信息*****"<<endl;outfile<<"??????????????????????????"<<endl;outfile<<"?职工号?姓名?性别?年龄?工资?"<<endl;for(inti=0;i<n;i++){outfile<<"??????????????????????????"<<endl;outfile<<"?"<<setw(8)<<sma[i].num<<"?"<<setw(8)<<sma[i].name<<"?"<<setw(8)<<sma[i].sex<<"?"<<setw(8)<<sma[i].age<<"?"<<setw(8)<<sma[i].salary<<"?"<<endl;}outfile<<"??????????????????????????"<<endl;outfile<<"********************************************"<<endl;}voidSalesman::txtout()//销售员数据备份{ofstreamoutfile("d:\output.txt",ios::app);if(!outfile){cout<<"备份失败!"<<endl;}outfile<<"*****销售员信息*****"<<endl;outfile<<"????????????????????????????????????"<<endl;outfile<<"?职工号?姓名?性别?年龄?工资?所属部门经理编号?"<<endl;for(inti=0;i<2*n;i++){outfile<<"????????????????????????????????????"<<endl;outfile<<"?"<<setw(8)<<sal[i].num<<"?"<<setw(8)<<sal[i].name<<"?"<<setw(8)<<sal[i].sex<<"?"<<setw(8)<<sal[i].age<<"?"<<setw(8)<<sal[i].pay()<<"?"<<setw(18)<<sal[i].funnum1()<<"?"<<endl;}outfile<<"????????????????????????????????????"<<endl;outfile<<"********************************************"<<endl;}intmain(){for(inti=0;;i++){intj;cout<<"??小型公司工资管理系统??"<<endl;cout<<"???????????????"<<endl;cout<<"?请选择您所需的操作?"<<endl;cout<<"?数据输入:1,并按回车键?"<<endl;cout<<"?数据统计:2,并按回车键?"<<endl;cout<<"?数据打印:3,并按回车键?"<<endl;cout<<"?数据备份:4,并按回车键?"<<endl;cout<<"?退出系统:5,并按回车键?"<<endl;cout<<"???????????????"<<endl;cout<<"请输入一个操作:";cin>>j;cout<<endl;switch(j){case1:{for(inti=0;i<n;i++){tec[i].input();cout<<endl;};cout<<"---------------------------"<<endl;for(i=0;i<n;i++){man[i].input();cout<<endl;};cout<<"---------------------------"<<endl;for(i=0;i<2*n;i++){sal[i].input();cout<<endl;};cout<<"---------------------------"<<endl;for(i=0;i<n;i++){sma[i].input();cout<<endl;};};break;case2:{Salesmanagersma1;sma1.print();sma1.shujutongji();};break;case3:{cout<<"请等待......"<<endl;cout<<"职工基本情况一览表如下"<<endl;cout<<endl;cout<<"技术员"<<endl;{Techniciantec1;tec1.print();cout<<endl;};cout<<"---------------------------"<<endl;cout<<"经理"<<endl;{Managerman1;man1.print();cout<<endl;};cout<<"---------------------------"<<endl;cout<<"销售经理"<<endl;{Salesmanagersma1;sma1.print1();cout<<endl;};cout<<"---------------------------"<<endl;cout<<"销售员"<<endl;{Salesmansal1;sal1.print();cout<<endl;};cout<<"---------------------------"<<endl;};break;case4:{cout<<"数据正在备份,请等待......"<<endl;Techniciantec1;tec1.txtout();Managerman1;man1.txtout();Salesmanagersma1;sma1.txtout();Salesmansal1;sal1.txtout();cout<<"数据备份完成!"<<endl;};break;case5:exit(1);break;default:cout<<"输入有误,请重新输入。"<<endl;}}return0;}
本文档为【用C++编程——小型公司工资管理系统】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_977556
暂无简介~
格式:doc
大小:39KB
软件:Word
页数:16
分类:互联网
上传时间:2017-11-15
浏览量:101