《程序设计综合设计汽车租赁管理系统.doc》由会员分享,可在线阅读,更多相关《程序设计综合设计汽车租赁管理系统.doc(46页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、武汉工程大学 计算机科学及工程学院综合设计报告设计名称: 程序设计综合设计 设计题目: 汽车租赁管理系统 学生学号: 专业班级: 学生姓名: 学生成绩: 指导教师(职称): 课题工作时间: 2011-12-26 至 2012-1-6 说明:1、报告中第一、二、三项由指导教师在综合设计开始前填写并发给每个学生;四、五两项(中英文摘要)由学生在完成综合设计后填写。2、学生成绩由指导教师根据学生设计情况给出各项分值及总评成绩。3、指导教师评语一栏由指导教师就学生在整个设计期间平时表现、设计完成情况、报告质量及答辩情况,给出客观、全面评价。4、所有学生必须参加综合设计答辩环节,凡不参加答辩者,其成绩一
2、律按不及格处理。答辩小组成员应由2人及以上教师组成。5、报告正文字数一般应不少于5000字,也可由指导教师根据本门综合设计情况另行规定。6、平时表现成绩低于6分学生,其综合设计成绩按不及格处理。7、此表格式为武汉工程大学计算机科学及工程学院提供基本格式(适用于学院各类综合设计),各教研室可根据本门综合设计特点及内容做适当调整,并上报学院批准。成绩评定表学生姓名: 学号: 班级: 类别合计分值各项分值评分标准实际得分合计得分备注平时表现1010按时参加综合设计,无旷课、迟到、早退、违反实验室纪律等情况。完成情况3020按设计任务书要求完成了全部任务,能完整演示其设计内容,符合要求。10能对其设计
3、内容进行详细、完整介绍,并能就指导教师提出问题进行正确回答。报告质量3510报告文字通顺,内容翔实,论述充分、完整,立论正确,结构严谨合理;报告字数符合相关要求,工整规范,整齐划一。5课题背景介绍清楚,综述分析充分。5设计方案合理、可行,论证严谨,逻辑性强,具有说服力。5符号统一;图表完备、符合规范要求。5能对整个设计过程进行全面总结,得出有价值结论或结果。5参考文献数量在3篇以上,格式符合要求,在正文中正确引用。答辩情况2510在规定时间内能就所设计内容进行阐述,言简意明,重点突出,论点正确,条理清晰。15在规定时间内能准确、完整、流利地回答教师所提出问题。总评成绩: 分 补充说明: 指导教
4、师: (签字)日 期: 年 月 日答辩记录表学生姓名: 学号: 班级: 答辩地点: 答辩内容记录:答辩成绩合计分值各项分值评分标准实际得分合计得分备注2510在规定时间内能就所设计内容进行阐述,言简意明,重点突出,论点正确,条理清晰。15在规定时间内能准确、完整、流利地回答教师所提出问题。答辩小组成员(签字): 年 月 日指导教师评语指导教师: (签字)日 期: 年 月 日一、综合设计目、条件、任务与内容要求:某汽车租赁公司提供租车服务,需要系统提供以下功能。1.可出租车有两种,小轿车与货车。小轿车按天计算租赁费用,货车可按小时(也可按天)计算租赁费用。小轿车每天租赁费用为100元,货车每小时
5、租赁费用为30元,若按天租则每天300元。小轿车与货车租赁天数若超过3天,则按8折计算租车费用。2.系统需提供车辆基本管理功能,如:添加车辆,修改车辆信息、删除车辆。3.系统提供车辆租赁基本服务功能,如:租车,还车,费用计算等。4.系统需提供车辆基本查询功能,如:车辆租赁情况。车辆每月租赁情况按以下格式显示: 车辆租赁情况一览表车号 车辆类型 租赁情况C0001 car XXX-XXXX-XXXXXX-O-T0001 truck HXX-HHHX-HHHXXXHHH-HHHXXX.说明:对于小轿车X表示租出状态、-表示空闲状态,对于货车X表示按天租出状态、H表示按小时租出状态、O表示车辆已出租
6、,还没有还、-表示空闲状态。通过本设计可以使学生在掌握C 语言及C+语言基础上,进行实际应用,设计一个小型软件。可以巩固已经学过基础课及专业课知识,开阔学生视野,锻炼学生自学能力及独立动手能力。 指导教师签字: 年 月 日二、进度安排:2011-12-26:明确所选课题具体要求,按要求阅读相关参考文献及资料2011-12-27至2012-1-5:课题代码实现、课程设计报告书写2012-1-6:课程设计答辩三、 应收集资料及主要参考文献:1 张俊.C+面象对象程序设计M. 北京:中国铁道出版社,2008. 90-100.2姬涛.计算机程序设计基础M.北京:中国传媒大学出版社.2010. 157-
7、301.3田鲁怀.数据结构M.北京:电子工业出版社.2006.100-200.四、综合设计(课程设计)摘要(中文):在经济快速发展今天,计算机已经成为人们日常生活不可缺少部分。每个公司都有自己管理系统,汽车租赁系统是现代汽车租赁公司不可缺少工具,公司要拥有一个完整车辆管理体系,能够提供用户租车与还车、实现添加车辆、查找车辆信息、删除车辆、以及修改车辆信息基本功能,才能使公司正常运行。我们用最简单程序设计语言C+面象对象程序设计实现公司内部基本服务与面象用户租赁服务,可以让用户查看所有车辆信息,方便租车与还车。程序完成后手动将数据保存到文件中,方便下次启动租赁系统时候直接将文件中数据导入到内存中
8、,继续使用。完成添加、查找、删除、修改、租车与还车基本功能与数据存储。五、综合设计(课程设计)Abstract(英文):In todays rapid economic development, the computer has become indispensable part of daily life. Every company has its own management system, car rental system is the modern car rental companies indispensable tools, companies need to have a
9、complete vehicle management system, to provide users with car rental, realize add vehicles, search vehicles messages, deleting vehicles, and modify the basic functions of the vehicle information, can make the company to normal operation. We use the most simple programming language C+ oo programming
10、realize the companys internal basic services like the user and rental service, to allow the user to view all of the vehicle information, convenient and ar rental. After the completion of the program manual will save to , so start next time when the lease system directly in the import into memory, co
11、ntinue to use. Complete add, delete, modify, search, rental car and the basic functions and data storage.第 33 页目 录摘 要IAbstractII第一章 课题背景11.1 基本理论依据11第二章 设计简介及设计方案论述32.1 设计简介32.1.1 设计方案3第三章 详细设计53.1 菜单设计53.1.1 程序详细设计5第四章 设计结果及分析74.1 测试结果74.1.1 结果分析8总 结9致 谢10参考文献11附录12摘 要关键词:计算机;汽车租凭系统;C+面向对象程序设计;数据存储
12、在经济快速发展今天,计算机已经成为人们日常生活不可缺少部分。每个公司都有自己管理系统,汽车租赁系统是现代汽车租赁公司不可缺少工具,公司要拥有一个完整车辆管理体系,能够提供用户租车与还车、实现添加车辆、查找车辆信息、删除车辆、以及修改车辆信息基本功能,才能使公司正常运行。我们用最简单程序设计语言C+面象对象程序设计实现公司内部基本服务与面象用户租赁服务,可以让用户查看所有车辆信息,方便租车与还车。程序完成后手动将数据保存到文件中,方便下次启动租赁系统时候直接将文件中数据导入到内存中,继续使用。完成添加、查找、删除、修改、租车与还车基本功能与数据存储。Abstract In todays rapi
13、d economic development, the computer has become indispensable part of daily life. Every company has its own management system, car rental system is the modern car rental companies indispensable tools, companies need to have a complete vehicle management system, to provide users with car rental, real
14、ize add vehicles, search vehicles messages, deleting vehicles, and modify the basic functions of the vehicle information, can make the company to normal operation. We use the most simple programming language C+ oo programming realize the companys internal basic services like the user and rental serv
15、ice, to allow the user to view all of the vehicle information, convenient and car rental. After the completion of the program manual will save to , so start next time when the lease system directly in the import into memory, continue to use. Complete add, delete, modify, search, rental car and the b
16、asic functions and data storage.第一章 课题背景 本课题以汽车租凭管理系统为背景,要求学生写出一个提供车辆基本管理功能;车辆基本查询功能与车辆租赁基本服务功能系统。汽车租赁系统程序设计,需要考察不仅仅是简单课本上那些程序设计语法,平时课本上说一些都是简单计算之类问题,用程序设计语言编写出来,考察多数只是算法与语法,并没有涉及到现实生活中问题。正好,汽车租赁系统这个程序设计与平时生活问题关系紧密,不是简单语法与算法可以解决。通过汽车租凭系统程序让同学们认识自己所学程序设计语言在实践中运用,使我们在课本上学习知识与日常生活相结合,让同学们加深理解。1.1 基本理论依
17、据汽车租凭管理西系统用面向对象程序设计C+来完成,首先,用一个Vehicle基类,其次就是又构造了一个Date类与Time类进行费用计算。在写文件时候,需要把数据从文件中读出与读入,用链表或对象数组来存储数据,并进行文件读写。这一章应说明本设计课题背景、目、意义、应解决主要问题及应达到技术要求;本设计基本理论依据与主要工作内容。 鉴于车辆在归还与租赁时复杂过程与工作量,应用程序实现整个过程就可方便进行租赁与归还操作而不用去进行手动重复繁杂地操作过程,节省了一定时间,也得到了较高效率.在该操作整个过程中,始终用一个文件来保存用户输入与系统计算出来信息,从而在下次程序被执行时,我们就可以轻易地调出
18、以前信息记录,以免要将上次信息要进行重复地录入,在文件操作过程中,需要以统一方式将节点中信息往文件中写入,从而在我们下一次提取文件中信息时,我们也可以以统一同一个模式将以前信息正确无误地提取出来保存到一个节点中,有效地进行对应地计算与保存,这样我们就能使整个操作过程顺利无误进行.在整个程序实现过程之前,一点我们必须知道,就是在整个操作过程中,就是整个租赁与归还具体流程与基本功能操作.整个租赁与归还过程分为12个基本操作功能:添加车辆,修改车辆信息,删除车辆信息,租车,还车,费用计算,查询车辆租赁情况,查询每月租赁情况,退出,保存本次租车与还车记录,导入以前租车数据记录与相关信息,显示车辆信息.
19、将程序编写过程则顺理成章地将整个任务过程分为这几个大模块,用函数予以实现与完善即可.在函数实现过程中,其实也是较为复杂一个过程,必须用到正确变量与一些方法去实现它整个流程,在整个程序实现过程中,我们需要尽量用到效率较高计算方法,这样可以大大地简化代码量与计算过程,便于程序地顺利执行.本程序基本上可以以较高地效率实现租车系统中一系列相关操作问题,对于一些处理细节,本程序也有考虑到,如跨年问题处理,跨月问题处理,等较为细碎问题细节也将关乎到程序成败,否则在租赁过程中会出现较大问题处理.甚至会导致程序在读写文件时信息对应错误,从而影响到以后执行过程与一些重要信息保存,那样将会产生较为严重后果,更不用
20、去谈能够实现租赁车辆与归还车辆一系列操作过程。第二章 设计简介及设计方案论述2.1 设计简介针对于车辆在租赁与归还中复杂性与计费冗余性,对整个过程由了大致了解后,编写出科学地符合该操作整个流程程序段.对每辆车全部有效信息保存于一个链表节点中,生成一个链表头将各个车辆信息串联起来,从而能够用链表方式将整个租赁与归还过程中所要求信息记录得以保存.在计费过程中就能够对应地找到该辆车对应链表上信息,对需要信息进行适当地调用就可方便地提供给用户与客户信息.实现整个操作基本过程.2.1.1 设计方案 本程序采用C+语言编写,整个课题功能实现可以按照几个功能模块函数编写来完成。依据以上目与做法,可将整个菜单
21、一共设置为添加车辆,删除车辆,租赁车辆,归还车辆,查询每一辆车租用记录,查询每个月内租用记录,保存上次录入车辆信息与租车记录,还车记录,从文件中提取以前相关信息并将其导入到程序中,从而保证上次录入车辆信息与车辆租用记录,还车记录日期等重要信息,退出等几个功能模块。在整个程序设计中,最为重要也就是如何用有效记录保存机制将整个车辆信息与记录保存起来。最为有效方法就是用链表方式,每辆车车辆信息与租用归还记录都用链表中对应一个节点予以表示,再将各个链表对应串联起来,也就保存了本次信息。在每次运行程序以前,先将文件中信息导出来,再导出来同时,由于存储文件时是按一个一个节点存储,所以每次把信息读出来时候也
22、就是按照这个顺序,顺序地读出来也就是一个节点信息,将这些信息用一个新生成节点保存起来,每次将这个新生成节点连接到表头上去从而将以前信息提取了出来并且保存到了链表中。所以以前信息仍然还在里面以便下一次查询与调用。在每次向文件里面写入节点信息之前,必须先清空文件上一次内容,否则读出来信息将会是从第一次保存信息开始往外读出,直到本次之前信息。由于后一次向文件中写入数据时都会将本次以前所有信息写入。如果按照这种读出方式,会导致同一个信息被读几次出来,影响了文件信息读出效果,保存文件时也会导致出现重复保存,也就不符合程序应用文件作用了。在构造简单框架时候,我将它们分为了四个部分,下面我将这四个部分中内容
23、做一简单介绍。在菜单信息中定义了三个函数:ShowAllInformation() 、ShowMenuInformation() 与OperatorVehicle() 。其中ShowAllInformation() 显示所有信息;ShowMenuInformation() 用以显示所要操作信息;OperatorVehicle() 是及显示信心想关联操作。另外加进来一个Stand() 函数,定义是车位,也就是车库对车编号。在操作函数中定义了AddVehicle() 、SearchVehicle() 、DeleteVehicle() 、ChangeVehicle() 、RentVehicle()
24、、ReturnVehicle()函数。分别用来添加车辆、查找车辆、删除车辆、修改车辆、租车与还车。文件中定义了madetxt() 、InputTxtInformation() 与OutputInformation() 三个函数。分别用来创建文件,导入文件与导出文件。最后一部分就是对Vehicle输入与输出运算符重载。第三章 详细设计3.1 菜单设计可将整个菜单一共设置为添加车辆,删除车辆,租赁车辆,归还车辆,查询每一辆车租用记录,查询每个月内租用记录,保存上次录入车辆信息与租车记录,还车记录,从文件中提取以前相关信息并将其导入到程序中,从而保证上次录入车辆信息与车辆租用记录,还车记录日期等重要
25、信息,退出等几个功能模块。3.1.1 程序详细设计在整个程序设计中,最为重要也就是如何用有效记录保存机制将整个车辆信息与记录保存起来。最为有效方法就是用链表方式,每辆车车辆信息与租用归还记录都用链表中对应一个节点予以表示,再将各个链表对应串联起来,也就保存了本次信息。在每次运行程序以前,先将文件中信息导出来,再导出来同时,由于存储文件时是按一个一个节点存储,所以每次把信息读出来时候也就是按照这个顺序,顺序地读出来也就是一个节点信息,将这些信息用一个新生成节点保存起来,每次将这个新生成节点连接到表头上去从而将以前信息提取了出来并且保存到了链表中。所以以前信息仍然还在里面以便下一次查询与调用。在每
26、次向文件里面写入节点信息之前,必须先清空文件上一次内容,否则读出来信息将会是从第一次保存信息开始往外读出,直到本次之前信息。由于后一次向文件中写入数据时都会将本次以前所有信息写入。如果按照这种读出方式,会导致同一个信息被读几次出来,影响了文件信息读出效果,保存文件时也会导致出现重复保存,也就不符合程序应用文件作用了。对于本程序,在保存租赁信息同时,是否能将租赁借与还信息对应保存起来,从而以备车辆收费计算与车辆信息查询,因此我们可以定义两个日期结构体数组,在车辆每被借出去一次后,它必须被相应还回去一次,并且在同一辆车被租赁出去以后在该车未被归还之前它是不能被租赁出去,所以只能是借一次还一次重复进
27、行。所以将一辆车租出去时间保存到结构体数组第几个元素中,那么它对应还车时间记录在归还时候也就必将被保存到另外一个结构体数组第几个元素中,那么在查询与计算费用时候,只需要提取两个结构体数组中同一个位置上元素再进行计算与查询即可。对于车辆删除操作,由于每次都要把以前信息保存到链表中,在保存之前会把文件中之前信息予以清空,则只需要将对应链表中对应节点信息删除出链表,然后保存链表节点信息时也就不会保存删除节点信息,该车辆信息也就被删除了。对于添加车辆操作实际上也就是在链表中增加一个节点然后在节点中保存该车信息,将该链表保存到链表中即可。对于查询字符串表示,我们可以为每一个节点定义一个字符数组域,每次该
28、车辆被租出时,就将对应状态X保存到该字符数组中,从而该字符对应栈顶指针与租赁日期栈顶指针是同一个位置地方。在输出该车辆租赁记录时,光输出X状态是不行,在每次输出X状态之后,检查对应本次租车归还时间与下一次租车租车时间是不是一致,如果不是一致,那么说明在本次租车归还时间与下次租车租车时间间隔时间内该车是空闲,这个状态也就必须要表示出来。故在每次执行该检查操作之后,对应输出空闲状态,如没有空闲状态则就不会输出该状态,继续下次输出操作。还有一个问题需要考虑是,如果该车被租赁出去后没有还,在查询状态时,需要对应输出0状态,则可以检查该车输出表示,因为在每次租车时候,状态都被改为了X。第四章 设计结果及
29、分析4.1 测试结果 整个程序段是按照课题要求进行具体设计,基本能够实现课题所要求各个功能,将各个功能付诸了较为详细实现过程,但实现代码量较为大,实现过程较为繁琐, 没有能够应用很好计算方法去逐步地实现每个要求解决功能菜单,影响了程序执行效率进一步飞跃式提升.图1 菜单界面Figure 1 menu interface图2费用计算Figure 2 cost calculation4.1.1 结果分析 从上面运行结果显示,基本完成了添加车辆、查找车辆信息、删除车辆、租车、还车与导入文件等操作,且能够正确显示运行结果。整个程序段还是基本实现了课题所要求基本功能要求.总 结完成了这次计算器程序设计,
30、我收获很多,也体会很多,要学好一门学科,没有刻苦钻研精神是不行,只有在不断尝试中,不断经历失败,然后又不断尝试才能获得成功。要完成一个优秀程序,必须熟练掌握各种语句特点及用法,要学会举一反三,充分实现C程序灵活性。在平时学习实践中,要不断开动脑筋,活学活用。要发扬团体合作精神,互帮互助,共同进步。善于发问,善于思考。刚开始接触C程序,就觉得有一种似曾相识感觉,因为以前学过VB.说实话,我对编程挺感兴趣,一个程序编写完成运行成功之后喜悦真让人难忘,就像次课程设计,一开始画图,计算器有许多数字键,要一个一个方框画很麻烦,我就试着能不能找到一个简单方法能一下子画完。我联想到了二维数组,每一个方框就好
31、象数组中每一个元素。于是我就试着用两个for嵌套方法,经过反复尝试,终于成功了,你说没错,当时感觉真比游戏打通关了还要好。在写程序过程中,我又碰到了一些难题,比如按键闪烁问题,按键不能直接运行问题,不能连续运行问题,还有数字不能成串显示问题。其中有些是问你,有些是我自己解决。比如连续运行,闪烁做好后,我发现每次运行只能按一个数字,按第二个数字时候就跳出了,后来我想到了在switch之前加for办法,这样就可以用循环办法达到我想达到目。至于数字成串问题,其实我是不成功,因为计算器数字显示从显示条右边开始,而我是从左边开始。我在switch前for前给b附值为0,然后在最后一个case后写b+,再
32、把每一个case中数字输出横坐标都写成“140+b*10”,这样,我就达到了成串输出目。要学好C程序,光有知识是不够,还得有经验,上机操作经验,只有大脑中有了经验,在碰到问题时候才有许多解决方案,然后才能去尝试。致 谢在本课题设计过程中得到指导教师刘黎志教师悉心指导。论文行文过程中,刘黎志教师教师多次帮助我分析思路,开拓视角,在我遇到困难想放弃时候给予我最大支持与鼓励。在此,谨向刘黎志教师致以诚挚谢意与崇高敬意。 感谢大学两年来,计算机系所有教师对我学习上帮助与生活上关怀,正是您们辛勤工作,才使我得以顺利地完成这个程序设计。 同时感谢实验室教师,他们给我们提供了必要实验器材,提供了很大方便 感
33、谢我室友们,尤其是刘伟,感谢他们在我无法解决问题时候能够在我身旁帮助我完成这些问题,感谢那些替我运行程序。最后,感谢各位评委能在百忙之中对我论文进行审察,由于本人知识有限,不足之处在所难免,还请各位评委指正。参考文献1 张俊.C+面象对象程序设计M. 北京:中国铁道出版社,2008. 90-100.2姬涛.计算机程序设计基础M.北京:中国传媒大学出版社.2010. 157-301.3田鲁怀.数据结构M.北京:电子工业出版社.2006.100-200.附录#include#include#includetypedef struct node1int year,month,day,hour;dat
34、e;typedef struct nodechar flag;char vehiclenumber20;char kind10;char zulin100;int i;int j;date in100;date out100;struct node* next;float fee100;vehicle;class linkprivate:vehicle* head,* tail;public:link()head=tail=new vehicle;void baocun()int i1,j1;ofstream ofs;ofs.open(C:Documents and SettingsAdmin
35、istrator桌面my.txt,ios:trunc|ios:out);if(!ofs)cout文件打开失败next!=NULL;p=p-next)p-next-zulinp-next-i=0;ofsnext-flagtnext-itnext-jtnext-kindtnext-zulintnext-vehiclenumbert;for(i1=0;i1next-i;i1+)ofsnext-ini1).yeartnext-ini1).monthtnext-ini1).daytnext-ini1).hourt;for(j1=0;j1next-j;j1+)ofsnext-outj1).yeartnex
36、t-outj1).monthtnext-outj1).daytnext-outj1).hourt;for(j1=0;j1next-j;j1+)ofsnext-feej1t;ofsE;ofs.close();cout文件保存成功!endl;void Add()char vehiclenumber120,kind110;vehicle* p;cout请录入车辆相关信息(车牌号码,车辆类型)endl;cout请输入你要添加车辆车牌号码vehiclenumber1;cout请输入你要添加车辆车辆类型kind1;p=new vehicle;strcpy(p-vehiclenumber,vehiclenu
37、mber1);strcpy(p-kind,kind1);p-next=NULL;tail-next=p;tail=tail-next;p-flag=-;p-i=0;p-j=0;cout添加车辆信息成功endl;void modify()char vehiclenumber120,vehiclenumber220,kind110;vehicle* p;cout请录入你要修改车辆信息车牌号码vehiclenumber1;cout请输入你要修改信息(车牌号码,车辆类型)endl;cout请输入车牌号码vehiclenumber2;cout请输入车辆类型kind1;for(p=head;p-next!
38、=NULL;p=p-next)if(strcmp(p-next-vehiclenumber,vehiclenumber1)=0)strcpy(p-next-vehiclenumber,vehiclenumber2);strcpy(p-next-kind,kind1);break;cout修改车辆信息成功endl;void deletes()char vehiclenumber120;vehicle* p;cout请输入你要删除车辆车牌号码vehiclenumber1;for(p=head;p-next!=NULL;p=p-next)if(strcmp(p-next-vehiclenumber,
39、vehiclenumber1)=0)p-next=p-next-next;break;cout删除车辆信息成功endl;void zuche()char vehiclenumber120;vehicle* p;cout请输入你要租车车牌号码vehiclenumber1;for(p=head;p-next!=NULL;p=p-next)if(strcmp(p-next-vehiclenumber,vehiclenumber1)=0)if(p-next-flag=-)if(strcmp(p-next-kind,CAR)=0)cout请输入起点时间(年月日时,并且本车只按天出租)p-next-out
40、p-next-i.yearp-next-outp-next-i.monthp-next-outp-next-i.dayp-next-outp-next-i.hour;p-next-zulinp-next-i=X;p-next-flag=X;(p-next-i)+;elsechar flag1;cout你是要按小时租赁货车车吗?(Y代表是,N代表不是)flag1;if(flag1=Y)cout请输入起点时间(年月日时)p-next-outp-next-i.yearp-next-outp-next-i.monthp-next-outp-next-i.dayp-next-outp-next-i.ho
41、ur;p-next-zulinp-next-i=H;p-next-flag=H;(p-next-i)+;elsecout请输入起点时间(年月日时)p-next-outp-next-i.yearp-next-outp-next-i.monthp-next-outp-next-i.dayp-next-outp-next-i.hour;p-next-zulinp-next-i=X;p-next-flag=X;(p-next-i)+;cout租车成功endl;elsecout该车已被租赁next=NULL)cout车库中没有该车endl;void returns()char vehiclenumber120;vehicle* p;cout请输入你还车车牌号码endl;