


版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、#include<iostream>#include<iomanip>#include<conio.h>#include<string>#include<fstream>/输入/输出文件流类usingnamespacestd;constintMaxr=100;/最多的客户constintMaxc=100;/最多的汽车constintMaxcar=5;/每位客户最多租五辆汽车classbiaozhipublic:inttag;/删除标记1:已删0:未删intno;/编号;/客户类,实现对客户的信息的描述classCustomer:pub
2、licbiaozhipublic:charname20;/客户姓名intborcarMaxcar;/所租汽车Customer()构造函数char*getname()returnname;/获取姓名intgettag()returntag;/获取删除标记intgetno()returnno;/获取客户编号voidsetname(charna)(strcpy(name,na);/设置姓名voiddelcar()(tag=1;/设置删除标记voidaddcustomer(intn,char*na);增加客户voidborrowcar(intcarid);/出租操作intretcar(intcarid
3、);/归还操作voiddisp();/输出客户信息virtualvoidprint();/输出原客户信息;voidCustomer:addcustomer(intn,char*na)(tag=0;no=n;strcpy(name,na);for(inti=0;i<Maxcar;i+)(borcari=0;/增加客户voidCustomer:borrowcar(intcarid)(for(inti=0;i<Maxcar;i+)(if(borcari=0)(borcari=carid;return;/出租操作intCustomer:retcar(intcarid)(for(inti=0
4、;i<Maxcar;i+)(if(borcari=carid)(borcari=0;return1;elsecontinue;return0;/归还操作voidCustomer:disp()(cout<<setw(5);cout<<no;cout<<setw(10);cout<<name;cout<<"出租汽车编号:"for(inti=0;i<Maxcar;i+)(if(borcari!=0)(cout<<borcari<<"|"cout<<&qu
5、ot;"<<endl;/输出客户信息voidCustomer:print()(cout<<"原客户编号:"cout<<setw(5);cout<<no;cout<<"t原客户姓名:"cout<<setw(10);cout<<name;cout<<"t租租汽车编号:”;for(inti=0;i<Maxcar;i+)(if(borcari!=0)(cout<<borcari<<"|"cout&l
6、t;<""<<endl;/输出原客户信息/客户类库,实现建立客户的个人资料classCDatabase(public:inttop;/客户记录指针CustomercustomMaxc;/客户记录CDatabase();/构造函数,将customer.txt读到custom中voidclear()(top=-1;/删除所有客户信息intaddcustomer(intn,char*na);/增添客户信息Customer*query(intcustomerid)(for(inti=0;i<=top;i+)(if(customi.getno()=custom
7、erid&&customi.gettag()=0)(return&customi;returnNULL;/按编号查找voiddisp();/输出所有客户信息for(inti=0;i<=top;i+)(if(customi.getno()=customerid&&customi.gettag()=0)(customi.print();/输出客户原有信息intcustomernum();/得到客户编号voidcustomerdata();/客户库管理CDatabase();/析构函数,将custom写入customer.txt文件中;CDatabase
8、:CDatabase()(Customers;top=-1;fstreamfile("customer.txt",ios:in);while(1)(file.read(char*)&s,sizeof(s);if(!file)break;top+;customtop=s;file.close();/构造函数,将customer.txt读到custom中CDatabase:CDatabase()(fstreamfile("customer.txt",ios:out);for(inti=0;i<=top;i+)if(customi.gettag(
9、)=0)file.write(char*)&customi,sizeof(customi);elsefile.close();ofstreamf("c:kehu.txt");for(intj=0;j<=top;j+)if(customj.gettag()=0)f<<"编号"<<customj.no;f<<"ttt"f<<"姓名"f<<;f<<"ttt"f<<"所租汽
10、车编号(没有就写0)"f<<customj.borcarj;f<<endl;/析构函数,将custom写入customer.txt文件中intCDatabase:addcustomer(intn,char*na)Customer*p=query(n);if(p=NULL)top+;customtop.addcustomer(n,na);cout<<"客户添加成功"<<endl;return1;return0;/增添客户信息voidCDatabase:disp()for(inti=0;i<=top;i+)cust
11、omi.disp();/输出所有客户信息intCDatabase:customernum()returntop;/客户库管理voidCDatabase:customerdata()charchoice;charcname20;/客户姓名intcustomerid;Customer*r;do(cout<<"nnnttt欢迎进入汽车管理界面"<<endl<<endl;cout<<"tt"<<endl;cout<<"tt|1增加客户|"<<endl;cout
12、<<"tt|2更改客户|"<<endl;cout<<"tt|3删除客户|"<<endl;cout<<"tt|4查找客户|"<<endl;cout<<"tt|5查看全部|"<<endl;cout<<"tt|6删除全部|"<<endl;cout<<"tt|0返回上一层|"<<endl;cout<<"tt-"
13、<<endl;cin>>choice;switch(choice)(case'1':cout<<"新增n输入客户编号:";cin>>customerid;try(if(customerid<=0)throw1;catch(.)(cout<<"输入有误,请重新输入break;cout<<"输入客户姓名:"cin>>cname;addcustomer(customerid,cname);break;case'2':cout<
14、;<"更改n输入客户编号:"cin>>customerid;try(if(customerid<=0)throw1;catch(.)(cout<<"输入有误,请重新输入break;r=query(customerid);if(r=NULL)(cout<<"该客户不存在"<<endl;break;print(customerid);cout<<"输入新的客户编号:";cin>>customerid;try(if(customerid<=0
15、)throw1;catch(.)(cout<<"输入有误,请重新输入"break;cout<<"输入新的客户姓名:"cin>>cname;r->addcustomer(customerid,cname);cout<<"修改成功!"<<endl;break;case'3':cout<<"删除n输入客户编号:";cin>>customerid;try(if(customerid<=0)throw1;catch
16、(.)(cout<<"输入有误,请重新输入"break;r=query(customerid);if(r=NULL)(cout<<"该客户不存在"<<endl;break;r->delcar();break;case'4':cout<<"查找n读入客户编号cin>>customerid;try(if(customerid<=0)throw1;catch(.)(cout<<"输入有误,请重新输入"break;r=query(cu
17、stomerid);if(r=NULL)(cout<<"该客户不存在"<<endl;break;r->disp();break;case'5':cout<<"显示:"<<endl;disp();break;case'6':clear();cout<<"已删除!"<<endl;break;default:if(choice!='0')cout<<"输入错误,请从新输入:break;while
18、(choice!='0');汽车类,实现对汽车的描述,汽车的编号,名称,租出,归还等classCar:publicbiaozhi(public:charname20;/名称intonshelf;/是否在车库1:在车库0:已租Car()(char*getname()(returnname;/获取姓名intgetno()(returnno;/获取汽车编号intgettag()(returntag;/获取删除标记voidsetname(charna)(strcpy(name,na);/设置名称voiddelcar()(tag=1;/删除汽车voidaddcar(intn,char*n
19、a)(tag=0;no=n;strcpy(name,na);onshelf=1;/增加汽车intborrowcar()(if(onshelf=1)(onshelf=0;return1;return0;/出租操作voidretcar()(onshelf=1;/归还操作voidprint()(cout<<"汽车原编号:"<<setw(6)<<no<<”t汽车原名称:"<<setw(18)<<name<<"t"<<setw(10)<<(onsh
20、elf=1?"在车库”:"已租")<<endl;/输出汽车voiddisp()cout<<setw(6)<<no<<setw(18)<<name<<setw(10)<<(onshelf=1?"在车库":"已租")<<endl;/显示voiddisp(intk)(cout<<"编号为"<<no<<endl;template<classT>classbiaozhiq(
21、public:Tabaso;/汽车库类,实现对汽车的管理,查找,删除等classCarDatabase(public:inttop;/汽车记录指针CarcheMaxc;/汽车记录CarDatabase()(Carb;top=-1;fstreamfile("che.txt",ios:in);while(1)(file.read(char*)&b,sizeof(b);if(!file)break;top+;chetop=b;file.close();/构造函数,将che.txt读到che中voidclear()/全删(top=-1;intaddcar(intn,char
22、*na);增加汽车Car*query(intcarid)(for(inti=0;i<=top;i+)if(chei.getno()=carid&&chei.gettag()=0)(return&chei;returnNULL;/查找汽车voidcardata();/汽车库管理virtualvoidprint(intn)(for(inti=0;i<=top;i+)if(chei.getno()=n)chei.print();/输出原汽车voiddisp()(for(inti=0;i<=top;i+)if(chei.gettag()=0)chei.disp
23、();/显示CarDatabase();/析构函数,将che写到che.txt文件中;intCarDatabase:addcar(intn,char*na)(Car*p=query(n);if(NULL=p)(top+;chetop.addcar(n,na);return1;return0;/增加汽车CarDatabase:CarDatabase()fstreamfile("che.txt",ios:out);for(inti=0;i<=top;i+)if(chei.gettag()=0)file.write(char*)&chei,sizeof(chei);
24、file.close();ofstreamf("c:qiche.txt");for(intj=0;j<=top;j+)if(chej.gettag()=0)f<<"编号"f<<chej.no;f<<"ttt"f<<"汽车"f<<;f<<"ttt"if(chej.onshelf=1)f<<"在车库"<<endl;elsef<<"已出租&q
25、uot;<<endl;/析构函数,将che写到che.txt文件中/汽车管理voidCarDatabase:cardata()charchoice;charcname20;intcarid;Car*b;docout<<"nnnttt欢迎进入汽车管理界面"<<endl<<endl;cout<<"tt"<<endl;cout<<"tt|1增加汽车|"<<endl;cout<<"tt|2更改汽车|"<<
26、endl;cout<<"tt|3删除汽车|"<<endl;cout<<"tt|4查找汽车|"<<endl;cout<<"tt|5查看全部|"<<endl;cout<<"tt|6删除全部|"<<endl;cout<<"tt|0返回上一层|"<<endl;cout<<"tt-"<<endl;cin>>choice;switch
27、(choice)case'1':cout<<"新增n输入汽车编号:"<<endl;cin>>carid;try(if(carid<=0)throw1;catch(.)(cout<<"输入有误,请重新输入"break;cout<<"输入汽车名称:"<<endl;cin>>cname;addcar(carid,cname);break;case'2':cout<<"更改n输入汽车编号:"
28、<<endl;cin>>carid;try(if(carid<=0)throw1;catch(.)(cout<<"输入有误,请重新输入"break;b=query(carid);if(b=NULL)(cout<<"该汽车不存在"cout<<endl;break;print(carid);cout<<"输入新的汽车编号:"cout<<endl;cin>>carid;try(if(carid<=0)throw1;catch(.)br
29、eak;cout<<"输入新的汽车名称:"<<endl;cin>>cname;b->addcar(carid,cname);cout<<"修改成功!"<<endl;break;case'3':cout<<"删除n读入汽车编号:"<<endl;cin>>carid;tryif(carid<=0)throw1;catch(.)cout<<"输入有误,请重新输入"break;b=quer
30、y(carid);if(b=NULL)cout<<"该汽车不存在"cout<<endl;break;b->delcar();break;case'4':cout<<"查找n读入汽车编号:"cout<<endl;cin>>carid;tryif(carid<=0)throw1;catch(.)cout<<"输入有误,请重新输入"break;b=query(carid);if(b=NULL)(cout<<"该汽车不存在
31、"cout<<endl;break;b->disp();break;case'5':cout<<"显示:"<<endl;disp();break;case'6':clear();cout<<"已删除!"<<endl;break;default:if(choice!='0')cout<<"输入错误,请从新输入while(choice!='0');voidshowmenu()(cout<<
32、;"*-"<<endl;cout<<"1*出租汽车*"<<endl;cout<<"*-"<<endl;cout<<"2*归还汽车*"<<endl;cout<<"*-"<<endl;cout<<"3*汽车管理*"<<endl;cout<<"*-"<<endl;cout<<"4*客户管
33、理*"<<endl;cout<<"*-"<<endl;cout<<"0*退出并保存*"<<endl;cout<<"*-"<<endl;voidshowtip()(cout<<"ntt-操作完成!-"<<endl;cout<<"tt选择0-5继续-"<<endl;cout<<"*-"<<endl;cout<&
34、lt;"1.*出租汽车*"<<endl;cout<<"*-"<<endl;cout<<"2*归还汽车*"<<endl;cout<<"*"<<endl;cout<<"3,*汽车管理*"<<endl;cout<<"*"<<endl;cout<<"4.*客户管理*"<<endl;cout<<&qu
35、ot;*"<<endl;cout<<"0.*退出并保存*"<<endl;cout<<"*"<<endl;/main()函数的实现,intmain()程序的主界面的引导(cout<<""<<endl;cout<<""<<endl;cout<<""<<endl;cout<<""<<endl;cout<<&
36、quot;"<<endl;cout<<"*"<<endl;cout<<"*"<<endl;cout<<"*"<<endl;cout<<"*"<<endl;cout<<"*"<<endl;cout<<"*欢迎使用*"<<endl;cout<<"*汽车租赁*"<<endl;
37、cout<<"*管理系统*"<<endl;cout<<"*"<<endl;cout<<"welcometotheCarrentalmanagementsystem"<<endl;cout<<""<<endl;cout<<""<<endl;cout<<""<<endl;cout<<""<<en
38、dl;cout<<""<<endl;cout<<""<<endl;getch();/为了停顿一下,按任意键才继续往下运行system("cls");/系统清屏chark20;intt=3;p3:cout<<"欢迎使用汽车租赁管理系统,请输入登陆密码(只可输入3次)cout<<endl;cin>>k;/输入密码if(strcmp("111",k)=0)cout<<"密码正确"<<e
39、ndl;else(cout<<"密码错误!剩余"<<-t<<"次。"<<endl;if(t=0)return0;gotop3;charchoice;intcarid,customerid;/汽车编号,客户编号CDatabaseCustomerDB;/客户库Customer*r;/客户CarDatabaseCarDB;/汽车库Car*b;/汽车cout<<"正在打开系统,请稍后.”<<endl;showmenu();/显示菜单cout<<"ttt请选择菜
40、单中的数字以便处理数据:"cin>>choice;while(choice!='0')(switch(choice)(case'1':/输入客户编号和要出租的汽车cout<<"出租n客户编号:";cin>>customerid;try(if(customerid<=0)throw1;catch(.)(cout<<"输入有误,请重新输入break;cout<<"汽车编号:"cin>>carid;tryif(carid<=0)throw1;catch(.)(cout<<"输入有误,请重新输入break;r=CustomerDB.query(customerid);/按编号查找if(NULL=r)(cout<<"不存在该客户!"cout<<endl;break;b=CarDB.query(c
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 三年级下语文教学设计太阳是大家的
- 邵东二中考试试卷及答案
- 山西高二联考试卷及答案
- 三原职教高考试卷及答案
- 2025至2030年中国贵金属清洗机市场分析及竞争策略研究报告
- 硅冶炼原料选择与配料计算考核试卷
- 矿产勘查项目管理流程与效率提升考核试卷
- 经济型酒店品牌竞争策略考核试卷
- 毛皮服装设计与时尚趋势预测考核试卷
- 社会人文与消费者行为考核试卷
- 《特斯拉汽车供应链管理》课件
- 内河船舶船员基本安全知识考试题库300题(含答案)
- 无人机操控 教学设计公开课教案教学设计课件
- 2024 年普通高等学校招生全国统一考试新课标 I 卷-数学试卷-全国
- 《瑞幸咖啡财务造假案例分析》8400字(论文)
- 安全生产法律法规注册安全工程师考试(初级)试题与参考答案(2024年)一
- (试卷)2024贵州省初中学业水平考试·物理
- 云南省职业技能大赛(健康照护赛项)理论参考试题及答案
- 自然辩证法论述题146题带答案(可打印版)
- DB43T 2534-2022 电力气象服务技术规范
- 工程合伙人协议书范文模板下载电子版
评论
0/150
提交评论