版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
C++面向对象程序设计课程设计报告课程名称C++面向对象程序设计课题名称公司人员信息管理系统 专业 月25日(一)、课程设计题目(二)、目的与要求:(1)要求学生达到熟练掌握C++语言的基本知识和技能;(2)基本掌握面向对象程序设计的基本思路和方法;(3)能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题。(1)要求利用面向对象的方法以及C++的编程思想来完成系统的设计;(2)要求在设计的过程中,建立清晰的类层次;(3)在系统中至少要定义四个类,每个类中要有各自的属性和方法;(4)在系统的设计中,至少要用到面向对象的一种机制。果进行修改的功能。(三)、设计方法和基本原理:(1)添加功能(2)查询功能(3)显示功能(4)修改功能(5)删除功能对已添加的人员记录进行删除。如果当前系统中没有相应的人员记录,则提示“记录为空!”(6)统计功能(7)保存功能(8)读取功能根据系统功能要求,可以将问题解决分为以下步骤:1)应用系统分析,建立该系统的功能模块框图以及界面的组织和设计;3)根据问题描述,设计系统的类层次;4)完成类层次中各个类的描述;5)完成类中各个成员函数的定义;6)完成系统的应用模块;7)功能调试;8)完成系统总结报告。 错误!未定义书签。 错误!未定义书签。6.心得体会 1.系统需求分析现在的公司越做越大,公司的人员数量越来越多,因此需要一个公司人员管理系技术人员信息。息。删除的编号对该记录进行删除,如果没有找到,则提示相应的记录不存在。①可根据职位的编号查询某职位的所有职员信息。②可根据职员的编号查询某职员的所有信息。如果未找到,给出相应的提示信息,如果找到,则显示相应的记录信息。件中。计理信息管理术人员信息管理售经理信息管理售人员信息管理理信息管理术人员信息管理售经理信息管理售人员信息管理show()显示职员信息;主函数main()用于调用这些函数。管理系统销销销销销销销销售售售售售售售售销销销销销销销销售售售售售售售售经经经经经经经经理理理理理理理理信信信信信信信信息息息息息息息息添查显修删统保读技技技技技技技技术术术术术术术术人人人人人人人人员员员员员员员员信信信信信信信信息息息息息息息息添查显修删统保读经经经经经经经经理理理理理理理理信信信信信信信信息息息息息息息息添查显修删统保读加询示改除计存取售售售售售售售售人人人人人人人人员员员员员员员员信信信信信信信信息息息息息息息息添查显修删统保读(1)Stuff类(抽象类)的设计:virtualvoidread()=0;virtualvoidadd()=0;virtualvoidmodify(int)=0;virtualvoiddel(int)=0;(2)经理类的设计:ManaManagerpayvoidread();voidadd();voidlook();(3)销售人员类的设计:anatmarkettratevoidread();voidadd();voidlook();oidreadoidadd(4)销售经理类的设计:agerfloatpaymarketrate1;oidreadoidaddvoidlook);(5)技术人员类的设计:nicistoidreadoidaddvoidlook);voidshow);((6)各个类的关系描述:ManagerManageroidreadalvoidreadvirtualvoidadd()=0;virtualvoidmodify(int)=0;agerpay1,market1,rate1;oidreadoidadd3.详细设计及实现ssStuffvirtualvoidread()=0;virtualvoidadd()=0;virtualvoidlook()=0;virtualvoidshow()=0;virtualvoidmodify(int)=0;virtualvoiddel(int)=0;virtualvoidcount()=0;virtualvoidsave()=0;virtualvoidInput()=0;virtualvoidOutput()=0;charname[100];charsex[10];chardepartment[10];charrank[10];floatmonpay;};#include"Stuff.h"classManager:publicStuffvoidread();lookhowyintintuntavenputmonpay=pay;}t"<<setw(10)<<"性别"<<setw(10)<<"所在部门"<<setw(10)<<别"<<setw(10)<<月"薪"<<endl;cout<<setw(10)<<"经理信息setwnumbersetwnamesetwsex<<setw(10)<<department<<snksetwmonpayendldManager.cppvoidManager::read(){fstreammanagerfile("经理信息管理.dat",ios::in|ios::out);managerfile>>m1[count_Manager].number>>m1[count_Manager].name>>m1[count_Manager].sex>>m1[count_Manager].department>>m1[count_Manager].rank>>m1[count_Manager].monpay;while(!managerfile.eof()){managerfile>>m1[count_Manager].number>>m1[count_Manager].name>>m1[count_Manager].sex>>m1[count_Manager].department>>m1[count_Manager].rank>>m1[count_Manager].monpay;count_Manager++;}managerfile.close();}voidManager::add(){m1[count_Manager].number=number;strcpy(m1[count_Manager].name,name);strcpy(m1[count_Manager].sex,sex);strcpy(m1[count_Manager].department,department);strcpy(m1[count_Manager].rank,rank);m1[count_Manager].monpay=monpay;m1[count_Manager].number=number;countManager;}gerlook{r{}while(choice!=1&&choice!=2){case1:{tintiicountManagerir{m[i].Output();}}l}{tountManageri{{mi.Output();}}l}}}gershow{forintiicountManagerimi.Output();}oidManagermodifyintindex{mindex].number=number;exentdepartmentkmindex.monpay=monpay;}oidManagerdelintindex{orintiindexicountManageri{mi1].number=m1[i].number;namexmisexmentmidepartmentrankmi.monpay=m1[i].monpay;}count_Manager--;}gercount{eountManageri{ale}}gersave{fileforintiicountManagerimanagerfile<<m1[i].number<<""<<m1[i].name<<""<<m1[i].sex<<"mi].department<<""<<m1[i].rank<<""<<m1[i].monpay<<endl;managerfile.close();}#include"Stuff.h"classSalesman:publicStuff{ublicvoidread();voidadd();voidlook();voidshow();yintintuntavenput{ntte}{cout<<setw(10)<<"销售人员信息"<<setw(10)<<"编号"<<setw(10)<"名"<<setw(10)<"别"<<setw(10)<<"所在部门"<<setw(10)<<别"<<setw(10)<<月"薪"<<endl;cout<<setw(10)<<"经理信息setwnumbersetwnamesetw<<sex<<setw(10)<<department<<sksetwmonpayendl}dSalesman.cppvoidSalesman::read(){fstreamSalesmanfile("销售人员信息管理.dat",ios::in|ios::out);Salesmanfile>>s1[count_Salesman].number>>s1[count_Salesman].name>>s1[count_Salesman].sex>>s1[count_Salesman].department>>s1[count_Salesman].rank>>s1[count_Salesman].monpay;while(!Salesmanfile.eof()){Salesmanfile>>s1[count_Salesman].number>>s1[count_Salesman].name>>s1[count_Salesman].sex>>s1[count_Salesman].department>>s1[count_Salesman].rank>>s1[count_Salesman].monpay;count_Salesman++;}Salesmanfile.close();}voidSalesman::add(){s1[count_Salesman].number=number;strcpy(s1[count_Salesman].name,name);strcpy(s1[count_Salesman].sex,sex);departmentdepartmentrankrankpay}esmanlook{{}while(choice!=1&&choice!=2){case1:{outrintiicountSalesmani{}}l}{outcountSalesmani{{}}l}}}esmanshow{forintiicountSalesmani}oidSalesmanmodifyintindex{exentdepartmentk}oidSalesmandelintindex{orintiindexicountSalesmani{namexsisexmentsidepartmentrank}count_Salesman--;}esmancount{countSalesmani{male}}esmansave{anfileforintiicountSalesmaniSalesmanfiles[i].number<<""<<s1[i].name<<""<<s1[i].sex<<"sidepartment<s1[i].rank<<""<<s1[i].monpay<<endl;anfileclose}Salesmanager.hclassSalesmanager:publicStuff{public:floatpay1,market1,rate1;voidread();voidadd();voidlook();voidshow();voidmodify(int);voiddel(int);voidcount();voidsave();voidInput(){cout:\n";cinnumbernameutncinpaymarketrate;monpaymarketratepay1;}t{cout<<setw(10)<<"销售经理信息"<<setw(10)<<"编号"<<setw(10)<"名"<<setw(10)<"别"<<setw(10)<<"所在部门"<<setw(10)<<别"<<setw(10)<<月"薪"<<endl;cout<<setw(10)<<"经理信息"<<setw(10)<<number<<setw(10)<<name<<setw(10)<<sex<<setw(10)<<department<<setw(10)<<rank<<setw(10)<<monpay<<endl;}Sslesmanager.cppvoidSalesmanager::read()erfiledatiosiniosoutSalesmanagerfile>>ss1[count_Salesmanager].number>>ss1[count_Salesmanager].namesscountSalesmanagersexsscountSalesmanagerdepartmentss1[clesmanagerranksscountSalesmanagermonpaywhile(!Salesmanagerfile.eof())namesscountSalesmanagersexsscountSalesmanager].department>>ss1[anagerranksscountSalesmanagermonpayrgerfilecloseesmanageradd{bernumbernagernamenameagersexsexagerdepartmentdepartmentnagerrankrankaymonpay}esmanagerlook{{}while(choice!=1&&choice!=2){case1:{outcountSalesmanageri{}}l}{outcountSalesmanageri{{}}l}}}esmanagershow{forintiicountSalesmanageri}oidSalesmanagermodifyintindex{meexmentdepartmentnk}oidSalesmanagerdelintindex{orintiindexicountSalesmanageri{ersinameexssisextmentssidepartmentsirank}count_Salesmanager--;}esmanagercount{countSalesmanageri{male}}esmanagersave{nagerfileforintiicountSalesmanageriSalesmanagerfile<<ss1[i].number<<""<<ss1[i].name<<""<<ss1[i].sex<<"ssidepartmentssirankss[i].monpay<<endl;gerfileclose}Technicist.hclassTechnicist:publicStuff{public:voidread();voidadd();voidlook();voidshow();voidmodify(int);voiddel(int);voidcount();voidsave();nput{nmonpayhour;}t{cout<<setw(10)<<"技术人员信息"<<setw(10)<<"编号"<<setw(10)<"名"<<setw(10)<"别"<<setw(10)<<"所在部门"<<setw(10)<<别"<<setw(10)<<月"薪"<<endl;cout<<setw(10)<<"技术人员信息"<<setw(10)<<number<<setw(10)<<name<<setw(10)<<sex<<setw(10)<<department<<setw(10)<<rank<<setw(10)<<monpay<<endl;}protected:floathour;Technicist.cppvoidTechnicist::read(){fstreamTechnicistfile("技术人员信息管理.dat",ios::in|ios::out);Technicistfile>>t1[count_Technicist].number>>t1[count_Technicist].name>>t1[count_Technicist].sex>>t1[count_Technicist].department>>t1[count_Technicist].rank>>t1[count_Technicist].monpay;while(!Technicistfile.eof()){Technicistfile>>t1[count_Technicist].number>>t1[count_Technicist].name>>t1[count_Technicist].sex>>t1[count_Technicist].department>>t1[count_Technicist].rank>>t1[count_Technicist].monpay;count_Technicist++;}Technicistfile.close();}voidTechnicist::add(){t1[count_Technicist].number=number;strcpy(t1[count_Technicist].name,name);strcpy(t1[count_Technicist].sex,sex);strcpy(t1[count_Technicist].department,department);strcpy(t1[count_Technicist].rank,rank);t1[count_Technicist].monpay=monpay;count_Technicist++;}nicistlook{{}while(choice!=1&&choice!=2){case1:{outrintiicountTechnicistir{}}l}{outountTechnicisti{{}}l}}}nicistshow{forintiicountTechnicisti}oidTechnicistmodifyintindex{mberexentdepartmentkpay}oidTechnicistdelintindex{orintiindexicountTechnicisti{numbernamextisexmenttidepartmentrankonpay}count_Technicist--;}nicistcount{ountTechnicisti{male}}nicistsave{istfileforintiicountTechnicistiechnicistfiletinumberranktfileclose}tinameti].sex<<"3.6main.cpp#include<iostream.h>#include<fstream.h>#include<string.h>#include<stdlib.h>#include<iomanip.h>#include"Stuff.h"#include"Manager.h"#include"Technicist.h"#include"Salesman.h"#include"Salesmanager.h"constintMAXMANAGER=100;constintMAXTECHNICIST=100;constintMAXSALESMAN=100;constintMAXSALESMANager=100;Managerm1[MAXMANAGER];Technicistt1[MAXTECHNICIST];Salesmans1[MAXSALESMAN];Salesmanagerss1[MAXSALESMANager];ntManagerntcountTechnicistountSalesmanintcountSalesmanager0;ermanage{quitfalsewhile){cout***********"<<endl;cout"<<endl;cout"<<endl;cout"<<endl;cout"<<endl;cout"<<endl;cout"<<endl;cout"<<endl;cout****************"<<endl;{case1:{Managerm;utnm.Input();ountManageri{ddave}}{Managerm;ook}{Managerm;howr}system("pause");}{Managerm;rhowountManageri{put{ifyindexave}}{Managerm;rforintiicountManagericout<<m1[i].number<<""<<m1[i].name<<""<<m1[i].sex<<"tmentmirankmimonpayendlountManageri{{l{p->del(index);p->save();}rn}}ak}{Managerm7;unt}}}}icistmanage{quitfalsewhile){cout信息管理子菜单*************"<<endl;cout.添加技术人员信息"<<endl;cout.查询技术人员信息"<<endl;cout.显示技术人员信息"<<endl;cout.修改技术人员信息"<<endl;cout.删除技术人员信息"<<endl;cout.统计技术人员人数"<<endl;cout退出"<<endl;cout*****************************"<<endl;{case1:{TechnicisttcoutnountTechnicistiif(t1[i].number==t2.number){cout<<"该编号的技术人员已存在!"<<endl;break;}{ddave}}{Technicisttook}{Technicistthow}{TechnicistthowountTechnicisti{put{ifyindexave}rn}ak}e{Technicistt6;ticistfor(inti=0;i<=count_Technicist-1;i++)cout<<t1[i].number<<""<<t1[i].name<<""<<t1[i].sex<<"tmenttiranktimonpayendlnicisti{{l{p->del(index);p->save();}rn}}ak}{Technicistt7;tp->count();ak}}}}manmanage{quitfalsewhile){cout员信息管理子菜单****************"<<endl;cout添加销售人员信息"<<endl;cout**********************************"<<endl;{case1:{esmanscoutnountTechnicistiif(s1[i].number==s2.number){cout<<"该编号的销售人员已存在!"<<endl;break;}if(s2.number>=MAXSALESMAN){cout<<销"售人员库已满,无法添加!"<<endl;return;}elsecout<<"是否保存销售人员信息?(y/n)\n";cin>>out;if(out=='y'){ddave}}{esmansook}{esmanshow}{esmanshowcountSalesmani{put{ifyindexave}return;}
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 电动汽车 -新能源汽车高精度齿轮加工技术
- 2024届陕西省南郑中学高三下学期寒假开学调研考试数学试题试卷
- 宁夏2024届中考数学试卷(含答案)
- 清堵器使用原理
- 5年中考3年模拟试卷初中道德与法治八年级下册02第2课时依法履行义务
- 2024-2025高中物理奥赛解题方法:十三.降维法含答案
- 盾构冬季施工实施方案
- 游泳馆翻新包工头合同
- 亲子乐园门窗工程合同协议
- 临时工程水泥运输协议范本
- 10.噪声污染与控制课件
- 北师大版四年级上册测试题附答题卡
- 社会体育指导员培训教案(完整版)
- 粤沪版八年级物理上册期中考试试卷(含答案).
- ISO9001+ISO14001+ISO45001质量环境及职业健康安全管理体系内部审核资料
- 球虫病及其免疫(1)
- 《全款购房合同》
- 聚丙烯Spherizone工艺技术及产品介绍
- 江苏自考数学教育学知识点
- [二手房买卖合同正式版] 二手房买卖合同最新版
- 部编版五年级语文上册第四单元集体备课教学计划和全部教案
评论
0/150
提交评论