ImageVerifierCode 换一换
格式:DOC , 页数:40 ,大小:600.50KB ,
资源ID:9850745      下载积分:12 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/9850745.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(销售员工管理系统.doc)为本站上传会员【人****来】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

销售员工管理系统.doc

1、 销售员工管理系统 40 2020年4月19日 文档仅供参考,不当之处,请联系改正。 C++大作业报告 班级:031111 学号:03111052 姓名:杨柳 销售公司员

2、工管理 一.题目要求 设计一个虚基类Staff(员工),包含编号、姓名和年龄保护数据成员以及相关的成员函数;由Staff派生出销售员类Salesman,包含销售额保护数据成员以及相关的成员函数;再由Staff派生出经理类Manager;然后由Salesman和Manager类派生出销售经理类SalesManager。 设计一个利用文件处理方式实现对公司人员(包括销售员、经理和销售经理)进行管理,具有增加数据、更新数据、查询数据、删除数据以及重组文件的功能。(删除数据在记录中做删除标志,重组文件指在物理上删除有删除标志的记录。)另外要求分别统计这三类员工的人数以及所有员工的总数。 二.编

3、程思想 由题目知至少需要四个类:一个基类、两个直接由基类派生的类、一个由上面两个派生出来的类共同派生的子类。首先定义一个虚基类Staff类,然后经过虚拟继承生成Salesman类和Manager类,最后由Salesman和Manager派生出主任工程师类SalesManager。这四个类中定义InputFromFile(istream &in)这一输入函数,另外每个类还定义输入信息和输出信息的成员函数。之后定义StaffChart、SalesmanChart、ManagerChart和SalesManagerChart四个类。为实现增加、更新、查询、删除以及全部显示人员的功能定义addIte

4、m、modifyItem、find、removeItem以及display函数。最后在主函数定义Staff_Chart、Salesman_Chart、Manager_Chart和SalesManager_Chart四个对象,经过循环执行并用switch函数选择功能,然后调用相关的函数来实现各种功能。 三.实验代码 #include #include using namespace std; class Staff { protected: char num[10]; char name[10]; int age;

5、 public: Staff * Next; void set_staff() { cout<<"请输入编号:";cin>>num; cout<<"请输入姓名:";cin>>name; cout<<"请输入年龄:";cin>>age; } void InputFromFile(istream &in) { in>>num>>name>>age; } void show() { cout<<"编号:"<

6、l; } char *get_num() { return num; } char *get_name() { return name; } int get_age() { return age; } }; class Salesman:virtual public Staff { protected: char major[10]; char t_title[10]; public: Salesman * Next; void set_salesman() { cout<<"请输入编号:";ci

7、n>>num; cout<<"请输入姓名:";cin>>name; cout<<"请输入年龄:";cin>>age; cout<<"请输入专业:";cin>>major; cout<<"请输入职称:";cin>>t_title; } void InputFromFile(istream &in) { in>>num>>name>>age>>major>>t_title; } void show_salesman() { cout<<"编号:"<

8、t<<"年龄:"<

9、oid set_manager() { cout<<"请输入编号:";cin>>num; cout<<"请输入姓名:";cin>>name; cout<<"请输入年龄:";cin>>age; cout<<"请输入职务:";cin>>job; cout<<"请输入部门:";cin>>dept; } void InputFromFile(istream &in) { in>>num>>name>>age>>job>>dept; } void show_manager() { cout<<"编号:"<

10、 cout<<"姓名:"<

11、salesmanager() { cout<<"请输入编号:";cin>>num; cout<<"请输入姓名:";cin>>name; cout<<"请输入年龄:";cin>>age; cout<<"请输入专业:";cin>>major; cout<<"请输入职称:";cin>>t_title; cout<<"请输入职务:";cin>>job; cout<<"请输入部门:";cin>>dept; } void InputFromFile(istream &in) { in>>num>>name>>age>>major>>t_t

12、itle>>job>>dept; } void show_salesmanager() { cout<<"编号:"<

13、t(); ~StaffChart(); void find(); //输出单个条目 void save(); //将信息输出到文件 void modifyItem(); //修改Staff条目 void removeItem(); //删除Staff条目 void display() //输出全部条目 { Staff *p=Head->Next; for(p;p!=End;p=p->Next) {

14、 p->show(); cout<set_staff(); End->Next=new Staff; End=End->Next; save(); } private: Staff * Head,* End; ifstream in; //文件输入 ofstream out; //文件输出 Staff * findItem(c

15、har * num) { for(Staff * p=Head;p->Next!=End;p=p->Next) if(!strcmp(p->Next->get_num() ,num)) return p; return NULL; } }; StaffChart::StaffChart() //构造函数 { Head=new Staff; Head->Next=new Staff; End=Head->Next; in.open("StaffChart.txt"); while(

16、in.eof()) { End->InputFromFile(in); if(End->get_num()[0]=='\0') break; End->Next=new Staff; End=End->Next; } in.close(); } StaffChart::~StaffChart() //析构函数 { for(Staff * temp;Head->Next!=End;) { temp=Head->Next; Head->Next=Head->Next->Next;

17、 delete temp; } delete Head,End; } void StaffChart::find() //查找条目 { char num[10]; Staff * p=NULL; cout<<"请输入要查找员工的工号:";cin>>num; if(p=findItem(num)) p->Next->show(); else { cout<<"没有找到!!"<

18、 //修改条目 { char num[10]; Staff * p=NULL; cout<<"请输入要修改员工的工号:";cin>>num; if(p=findItem(num)) { p->Next->show(); cout<<"请输入新的内容:"<Next->set_staff(); } else cout<<"没有找到!!"<

19、m[10]; Staff *p=NULL,*temp=NULL; cout<<"请输入要删除员工的工号:";cin>>num; if(p=findItem(num)) { temp=p->Next; p->Next=p->Next->Next; delete temp; cout<<"删除成功!!"<

20、pen("StaffChart.txt"); for(Staff * p=Head->Next;p!=End;p=p->Next) out<get_num()<<" "<get_name()<<" "<get_age()<

21、 //将信息输出到文件 void modifyItem(); //修改Engineer条目 void removeItem(); //删除Engineer条目 void display() //输出全部条目 { for(Salesman *p=Head->Next;p!=End;p=p->Next) p->show_salesman(); } void addItem() //添加条目 { //End->set_salesman(

22、); End->Next=new Salesman; End=End->Next; save(); } private: Salesman * Head,* End; ifstream in; //文件输入 ofstream out; //文件输出 Salesman * findItem(char * num) { for(Salesman * p=Head;p->Next!=End;p=p->Next) if(!strcmp(p->Next->get_n

23、um() ,num)) return p; return NULL; } }; SalesmanChart::SalesmanChart() //构造函数 { Head=new Salesman; Head->Next=new Salesman; End=Head->Next; in.open("SalesmanChaart.txt"); while(!in.eof()) { End->InputFromFile(in); if(End->get_num()[0]=='\0')

24、 break; End->Next=new Salesman; End=End->Next; } in.close(); } SalesmanChart::~SalesmanChart() //析构函数 { for(Salesman * temp;Head->Next!=End;) { temp=Head->Next; Head->Next=Head->Next->Next; delete temp; } delete Head,End; } void SalesmanChart

25、find() //查找条目 { char num[10]; Salesman * p=NULL; cout<<"请输入要查找销售员的工号:";cin>>num; if(p=findItem(num)) p->Next->show_salesman(); else cout<<"没有找到!!"<

26、L; cout<<"请输入要修改销售员的工号:";cin>>num; if(p=findItem(num)) { p->Next->show_salesman(); cout<<"请输入新的内容:"<Next->set_salesman(); } else cout<<"没有找到!!"<

27、temp=NULL; cout<<"请输入要删除销售员的工号:";cin>>num; if(p=findItem(num)) { temp=p->Next; p->Next=p->Next->Next; delete temp; cout<<"删除成功!!"<

28、xt"); for(Salesman * p=Head->Next;p!=End;p=p->Next) out<get_num()<get_name()<get_age()<get_major()<get_t_title()<

29、 //将信息输出到文件 void modifyItem(); //修改Leader条目 void removeItem(); //删除Leader条目 void display() //输出全部条目 { Manager *p=Head->Next; for(p;p!=End;p=p->Next) p->show_manager(); } void addItem() //添加条目 { End->set_manage

30、r(); End->Next=new Manager; End=End->Next; save(); } private: Manager * Head,* End; ifstream in; //文件输入 ofstream out; //文件输出 Manager * findItem(char * num) { for(Manager * p=Head;p->Next!=End;p=p->Next) if(!strcmp(p->Next->get_num

31、) ,num)) return p; return NULL; } }; ManagerChart::ManagerChart() //构造函数 { Head=new Manager; Head->Next=new Manager; End=Head->Next; in.open("ManagerChaart.txt"); while(!in.eof()) { End->InputFromFile(in); if(End->get_num()[0]=='\0') brea

32、k; End->Next=new Manager; End=End->Next; } in.close(); } ManagerChart::~ManagerChart() //析构函数 { for(Manager * temp;Head->Next!=End;) { temp=Head->Next; Head->Next=Head->Next->Next; delete temp; } delete Head,End; } void ManagerChart::find()

33、 //查找条目 { char num[10]; Manager * p=NULL; cout<<"请输入要查找经理的工号:";cin>>num; if(p=findItem(num)) p->Next->show_manager(); else cout<<"没有找到!!"<

34、理的工号:";cin>>num; if(p=findItem(num)) { p->Next->show_manager(); cout<<"请输入新的内容:"<Next->set_manager(); } else cout<<"没有找到!!"<

35、理的工号:";cin>>num; if(p=findItem(num)) { temp=p->Next; p->Next=p->Next->Next; delete temp; cout<<"删除成功!!"<

36、Next;p!=End;p=p->Next) out<get_num()<get_name()<get_age()<get_job()<get_dept()<

37、 void modifyItem(); //修改Leader条目 void removeItem(); //删除Leader条目 void display() //输出全部条目 { SalesManager *p=Head->Next; for(;p!=End;p=p->Next) p->show_salesmanager(); } void addItem() //添加条目 { End->set_salesmanager();

38、 End->Next=new SalesManager; End=End->Next; save(); } private: SalesManager * Head,* End; ifstream in; //文件输入 ofstream out; //文件输出 SalesManager * findItem(char * num) { for(SalesManager * p=Head;p->Next!=End;p=p->Next) if(!strcmp(p-

39、>Next->get_num() ,num)) return p; return NULL; } }; SalesManagerChart::SalesManagerChart() //构造函数 { Head=new SalesManager; Head->Next=new SalesManager; End=Head->Next; in.open("SalesManagerChaart.txt"); while(!in.eof()) { End->InputFromFile(in);

40、 if(End->get_num()[0]=='\0') break; End->Next=new SalesManager; End=End->Next; } in.close(); } SalesManagerChart::~SalesManagerChart() //析构函数 { for(SalesManager * temp;Head->Next!=End;) { temp=Head->Next; Head->Next=Head->Next->Next; delete temp;

41、 } delete Head,End; } void SalesManagerChart::find() //查找条目 { char num[10]; SalesManager * p=NULL; cout<<"请输入要查找销售经理的工号:";cin>>num; if(p=findItem(num)) p->Next->show_salesmanager(); else cout<<"没有找到!!"<

42、m() //修改条目 { char num[10]; SalesManager * p=NULL; cout<<"请输入要修改销售经理的工号:";cin>>num; if(p=findItem(num)) { p->Next->show_salesmanager(); cout<<"请输入新的内容:"<Next->set_salesmanager(); } else cout<<"没有找到!!"<

43、art::removeItem() //删除条目 { char num[10]; SalesManager *p=NULL,*temp=NULL; cout<<"请输入要删除销售经理的工号:";cin>>num; if(p=findItem(num)) { temp=p->Next; p->Next=p->Next->Next; delete temp; cout<<"删除成功!!"<

44、 void SalesManagerChart::save() //保存 { out.open("SalesManagerChart.txt"); for(Manager * p=Head->Next;p!=End;p=p->Next) out<get_num()<get_name()<get_age()<get_job()<get_dept()<

45、 SalesmanChart Salesman_Chart; ManagerChart Manager_Chart; SalesManagerChart SalesManager_Chart; bool quit=false; while(!quit) { cout<<"选择功能:\n1.增加数据\t2.更新数据\t3.查询数据\t4.删除数据\t5.列出全部人员\t6.退出"<>x; switch(x) { case 1: cout<<"选择增加的类型:\n1.员工\t2.销售员\t3.经理\t4.销售经理"<<

46、endl; cin>>y; switch(y) { case 1:Staff_Chart.addItem();break; case 2:Salesman_Chart.addItem();break; case 3:Manager_Chart.addItem();break; case 4:SalesManager_Chart.addItem();break; default :cout<<"输入错误,程序终止!!"<

47、更新的类型:\n1.员工\t2.销售员\t3.经理\t4.销售经理"<>y; switch(y) { case 1:Staff_Chart.modifyItem();break; case 2:Salesman_Chart.modifyItem();break; case 3:Manager_Chart.modifyItem();break; case 4:SalesManager_Chart.modifyItem();break; default :cout<<"输入错误,程序终止!!"<

48、t(-1); } break; case 3: cout<<"选择查询的类型:\n1.员工\t2.销售员\t3.经理\t4.销售经理"<>y; switch(y) { case 1:Staff_Chart.find();break; case 2:Salesman_Chart.find();break; case 3:Manager_Chart.find();break; case 4:SalesManager_Chart.find();break; default :cout<

49、<"输入错误,程序终止!!"<>y; switch(y) { case 1:Staff_Chart.removeItem();break; case 2:Salesman_Chart.removeItem();break; case 3:Manager_Chart.removeItem();break; case 4:SalesMan

50、ager_Chart.removeItem();break; default :cout<<"输入错误,程序终止!!"<>y; switch(y) { case 1:Staff_Chart.display();break; case 2:Salesman_Chart.display();break; case 3:Manager_C

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

关于我们      便捷服务       自信AI       AI导航        抽奖活动

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

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

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

关注我们 :微信公众号    抖音    微博    LOFTER 

客服