C++课程设计之车辆管理系统
c课程设计之车辆管理系统

c 课程设计之车辆管理系统一、教学目标本课程的学习目标主要包括知识目标、技能目标和情感态度价值观目标。
通过本课程的学习,学生需要掌握车辆管理系统的相关知识,包括车辆管理的基本概念、车辆管理的流程和方法等。
同时,学生需要具备一定的实际操作能力,能够运用所学知识对车辆进行有效管理。
此外,学生应该树立正确的车辆管理意识,具备良好的道德品质和社会责任感。
二、教学内容本课程的教学内容主要包括车辆管理的基本概念、车辆管理的流程和方法。
具体包括以下几个方面:1. 车辆管理的基本概念:车辆管理的定义、特点和作用;2. 车辆管理的流程:车辆的采购、使用、维护和报废等环节的管理;3. 车辆管理的方法:车辆管理的常用方法和技术,如车辆识别码系统、车辆定位系统等。
三、教学方法为了提高教学效果,本课程将采用多种教学方法,包括讲授法、讨论法、案例分析法和实验法等。
1. 讲授法:通过教师的讲解,使学生掌握车辆管理的基本概念和方法;2. 讨论法:通过分组讨论,培养学生的思考能力和团队协作能力;3. 案例分析法:通过分析实际案例,使学生了解车辆管理的具体操作过程;4. 实验法:通过实际操作,锻炼学生的动手能力和实际应用能力。
四、教学资源为了支持教学内容和教学方法的实施,我们将选择和准备适当的教学资源。
教学资源包括教材、参考书、多媒体资料和实验设备等。
1. 教材:选择权威、实用的教材,为学生提供全面、系统的学习资源;2. 参考书:推荐一些相关领域的参考书,帮助学生拓展知识面;3. 多媒体资料:制作精美的PPT、视频等多媒体资料,提高学生的学习兴趣;4. 实验设备:准备必要的实验设备,为学生提供实践操作的机会。
五、教学评估本课程的教学评估将采用多元化的方式,以全面、客观、公正地评估学生的学习成果。
评估方式包括但不限于以下几个方面:1. 平时表现:通过观察学生在课堂上的参与程度、提问回答等,了解学生的学习态度和理解程度;2. 作业:布置适量的作业,要求学生在规定时间内完成,以检验学生对知识的掌握情况;3. 考试:定期进行考试,以评估学生对课程知识的全面理解和运用能力。
实用文档之C++课程设计之车辆管理系统

实用文档之"C++面向对象程序设计"课程设计报告课程名称C++面向对象程序设计课题名称车辆管理系统专业班级学号姓名指导教师年月日(一)、课程设计题目:题目4 车辆管理系统(二)、目的与要求:1、目的:(1)要求学生达到熟练掌握C++语言的基本知识和技能;(2)基本掌握面向对象程序设计的基本思路和方法;(3)能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题。
2、基本要求:(1)要求利用面向对象的方法以及C++的编程思想来完成系统的设计;(2)要求在设计的过程中,建立清晰的类层次;(3)在系统中至少要定义四个类,每个类中要有各自的属性和方法;(4)在系统的设计中,至少要用到面向对象的一种机制。
3、创新要求:在基本要求达到后,可进行创新设计,如根据查找结果进行修改的功能。
(三)、设计方法和基本原理:功能要求:1)添加车辆程序主要完成车辆信息的添加,要求编号唯一。
如果添加了重复编号的物品时,则提示用户数据添加重复并取消添加;如果车辆信息库已满,则提示不能再添加新的车辆信息。
2)查询车辆可按照三种方式进行物品的查询。
·按车辆制造公司查询:·按编号查询:·按类别查询:如果未找到,给出相应的提示信息,如果找到,则显示相应的记录信息。
3)显示车辆信息库可显示当前车辆信息库中所有的车辆信息。
4)修改车辆可根据查询结果对相应的记录进行修改,修改时注意编号的唯一性。
5)删除车辆对已添加的车辆信息进行删除。
如果当前车辆信息库为空,则提示“车辆信息库为空!”并返回操作;否则输入要删除的编号,根据编号删除该车辆信息,如果没有找到该车辆信息,则提示“该编号不存在”。
6)统计功能输出当前车辆信息库中总车辆数,以及按车辆类别,统计出当前车辆信息库中各类别的车辆数并显示。
7)保存车辆将当前系统中车辆信息存入文件中。
8)读取车辆将保存在文件中的车辆信息读入到当前系统中,以供用户使用。
《C语言版交通管理系统》课程设计实验指导

任务四:数据更新与删除模块
2. 实现事务处理机制,确保数据一致性。
3. 提供友好的用户界面,方便管理员进行操作。
04
实验结果与演示
实验结果展示
实验结果展示
学生需要将实验结果以书面报告 的形式展示出来,包括程序代码、 运行结果、数据分析和结论等部 分。
实验结果评价
教师对学生的实验结果进行评估, 包括程序的正确性、效率、可读 性和可维护性等方面。
03
培养学生对实际问题的分析和解决能力,提高学生 的编程实践能力和团队协作能力。
实验要求
01
完成一个简单的交通管理系统,实现车辆信息录入、
查询、修改和删除等基本功能。
02
在实现基本功能的基础上,可适当增加其他功能,如
按车牌号查询、按车主姓名查询、统计车辆数量等。
03
保证程序的正确性、稳定性和可维护性,遵循良好的
将各个模块进行整合,实现系统整体功能。
数据结构设计
车辆信息表
存储车辆的基本信息,如车牌号、车 型、颜色等。
驾驶员信息表
存储驾驶员的基本信息,如姓名、性 别、年龄等。
违章记录表
存储违章记录的信息,如违章时间、 地点、违章内容等。
事故处理表
存储事故处理的信息,如事故时间、 地点、责任方等。
03
实验任务与步骤
任务一:数据录入模块
2. 实现添加新数据的函数,包括输入验证和错误处理。
3. 确保数据的一致性和完整性。
任务二:数据查询模块
• 数据查询模块概述:该模块允许 用户根据特定条件查询交通信息。
任务二:数据查询模块
功能要求 1. 能够按车辆ID查询车辆信息。 2. 能够按驾驶员ID查询驾驶员信息。
车辆管理系统课程设计

车辆管理系统课程设计一、课程目标知识目标:1. 理解并掌握车辆管理系统的基本概念、功能及运作原理;2. 学习并了解车辆管理系统中涉及的数据结构、算法及应用;3. 掌握运用车辆管理系统解决实际问题的方法。
技能目标:1. 能够运用所学知识设计并实现简单的车辆管理系统;2. 培养学生的团队协作能力,提高沟通与交流技巧,共同完成车辆管理系统的开发;3. 提高学生的问题分析能力,使其能够针对现实问题提出合理的解决方案。
情感态度价值观目标:1. 培养学生对车辆管理系统及相关技术的兴趣,激发其探索精神;2. 培养学生的创新意识,使其勇于尝试新方法,解决实际问题;3. 增强学生的社会责任感,使其认识到车辆管理系统在智慧交通中的重要性。
课程性质:本课程为实践性较强的信息技术课程,结合现实生活中的车辆管理问题,培养学生的实际操作能力和解决问题的能力。
学生特点:学生处于高年级阶段,已具备一定的编程基础和问题分析能力,对新鲜事物充满好奇心。
教学要求:注重理论与实践相结合,充分调动学生的积极性,引导学生主动探索,提高其解决实际问题的能力。
将课程目标分解为具体的学习成果,便于教学设计和评估。
二、教学内容1. 车辆管理系统的基本概念与功能- 系统概述:介绍车辆管理系统的定义、分类及应用场景;- 功能模块:学习车辆管理系统的核心功能模块,如车辆信息管理、停车场管理、违章处理等。
2. 车辆管理系统的关键技术- 数据结构:学习并应用链表、树等数据结构进行车辆信息存储与管理;- 算法:掌握排序、查找等算法在车辆管理系统中的应用;- 通信技术:了解RFID、GPS等技术在车辆管理中的运用。
3. 车辆管理系统的设计与实现- 系统设计:学习系统设计的基本原理和方法,绘制系统流程图、UML图等;- 编程实现:运用所学编程语言,实现车辆管理系统的核心功能;- 系统测试与优化:对实现的系统进行测试,分析并优化系统性能。
4. 实践项目与案例解析- 实践项目:组织学生分组完成一个简单的车辆管理系统的设计与实现;- 案例解析:分析现实生活中的车辆管理系统案例,了解其实际应用。
c语言车辆管理系统课程设计

c语言车辆管理系统课程设计一、课程目标知识目标:1. 学生能掌握C语言基础,包括数据类型、运算符、控制结构等,并运用到车辆管理系统的设计与实现中。
2. 学生能理解并运用数组、结构体等数据结构进行车辆信息的存储与管理。
3. 学生能运用文件操作实现对车辆信息数据的持久化存储。
技能目标:1. 学生能运用C语言编写出功能完整的车辆管理系统,包括车辆信息的添加、删除、查询和修改。
2. 学生通过课程学习,培养编程思维和解决问题的能力,具备一定的系统分析和设计能力。
情感态度价值观目标:1. 学生在学习过程中,培养对编程的兴趣,形成积极的学习态度和自主探究的精神。
2. 学生通过团队协作完成项目,培养沟通协作能力和集体荣誉感。
3. 学生在课程实践中,体会科技对生活的改变,增强对社会主义核心价值观的认同。
分析课程性质、学生特点和教学要求,将课程目标分解为以下具体学习成果:1. 掌握C语言基础知识,能独立完成车辆管理系统的基础功能编写。
2. 学会使用数据结构进行信息管理,提高代码的可读性和可维护性。
3. 通过项目实践,培养团队协作能力和解决问题的实际操作能力。
二、教学内容1. C语言基础:变量、数据类型、运算符、表达式、控制结构(顺序、选择、循环)。
相关教材章节:第一章至第四章。
2. 函数:函数定义、调用、参数传递、返回值。
相关教材章节:第五章。
3. 数组:一维数组、二维数组、数组操作。
相关教材章节:第六章。
4. 指针:指针的概念、指针操作、指针与数组、指针与函数。
相关教材章节:第七章。
5. 结构体:结构体定义、结构体变量操作、结构体数组、结构体指针。
相关教材章节:第八章。
6. 文件操作:文件打开、关闭、读写、定位。
相关教材章节:第十章。
7. 车辆管理系统设计与实现:系统需求分析、模块划分、功能实现、测试与调试。
教学内容安排:- 系统需求分析与设计:1课时- 车辆信息管理模块实现:2课时- 车辆信息查询模块实现:2课时- 车辆信息添加、删除、修改模块实现:2课时- 系统测试与调试:1课时教学内容确保科学性和系统性,以教材为基础,结合实际案例,使学生能够将所学知识应用于车辆管理系统的设计与实现中。
C课程设计之车辆管理系统

C课程设计之车辆管理系统IMB standardization office【IMB 5AB- IMBK 08- IMB 2C】C++面向对象程序设计课程设计报告课程名称C++面向对象程序设计课题名称车辆管理系统专业班级学号姓名指导教师年月日(一)、课程设计题目:题目4车辆管理系统(二)、目的与要求:1、目的:(1)要求学生达到熟练掌握C++语言的基本知识和技能;(2)基本掌握面向对象程序设计的基本思路和方法;(3)能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题。
2、基本要求:(1)要求利用面向对象的方法以及C++的编程思想来完成系统的设计;(2)要求在设计的过程中,建立清晰的类层次;(3)在系统中至少要定义四个类,每个类中要有各自的属性和方法;(4)在系统的设计中,至少要用到面向对象的一种机制。
3、创新要求:在基本要求达到后,可进行创新设计,如根据查找结果进行修改的功能。
(三)、设计方法和基本原理:功能要求:1)添加车辆程序主要完成车辆信息的添加,要求编号唯一。
如果添加了重复编号的物品时,则提示用户数据添加重复并取消添加;如果车辆信息库已满,则提示不能再添加新的车辆信息。
2)查询车辆可按照三种方式进行物品的查询。
·按车辆制造公司查询:·按编号查询:·按类别查询:如果未找到,给出相应的提示信息,如果找到,则显示相应的记录信息。
3)显示车辆信息库可显示当前车辆信息库中所有的车辆信息。
4)修改车辆可根据查询结果对相应的记录进行修改,修改时注意编号的唯一性。
5)删除车辆对已添加的车辆信息进行删除。
如果当前车辆信息库为空,则提示“车辆信息库为空!”并返回操作;否则输入要删除的编号,根据编号删除该车辆信息,如果没有找到该车辆信息,则提示“该编号不存在”。
6)统计功能输出当前车辆信息库中总车辆数,以及按车辆类别,统计出当前车辆信息库中各类别的车辆数并显示。
7)保存车辆将当前系统中车辆信息存入文件中。
c课程设计车辆管理系统

c 课程设计车辆管理系统一、教学目标本课程旨在通过学习车辆管理系统,使学生掌握C语言编程的基本概念和方法,培养学生解决实际问题的能力。
具体目标如下:1.理解C语言的基本语法和数据类型。
2.掌握函数的定义和调用。
3.了解指针的概念和应用。
4.熟悉结构体的定义和使用。
5.掌握文件操作的基本方法。
6.能够使用C语言编写简单的程序。
7.能够运用结构体和指针处理复杂的数据结构。
8.能够使用文件操作实现数据的持久化存储。
9.能够独立分析和解决实际问题,编写相应的车辆管理系统程序。
情感态度价值观目标:1.培养学生的编程兴趣,提高自主学习的积极性。
2.培养学生的团队合作意识,学会与他人分享和交流。
3.培养学生的创新精神,鼓励学生大胆尝试和发现问题。
二、教学内容本课程的教学内容主要包括C语言的基本语法、数据类型、函数、指针、结构体和文件操作等。
具体安排如下:1.C语言的基本语法和数据类型:介绍C语言的基本结构和数据类型,包括整型、浮点型、字符型等。
2.函数的定义和调用:讲解函数的声明、定义和调用,包括递归函数和外部函数。
3.指针的概念和应用:介绍指针的基本概念和运算,包括指针的声明、指针的赋值和指针的解引用等。
4.结构体的定义和使用:讲解结构体的定义和使用,包括结构体的声明、结构体的成员访问和结构体的指针等。
5.文件操作的基本方法:介绍文件的打开、关闭、读写等基本操作,包括文本文件和二进制文件的读写。
三、教学方法本课程采用多种教学方法,以激发学生的学习兴趣和主动性。
具体方法如下:1.讲授法:通过讲解和示范,使学生掌握C语言的基本概念和方法。
2.讨论法:学生进行小组讨论,培养学生的团队合作意识和问题解决能力。
3.案例分析法:通过分析实际案例,使学生了解C语言在车辆管理系统中的应用。
4.实验法:安排实验室实践,让学生亲自动手编写程序,巩固所学知识。
四、教学资源本课程的教学资源包括教材、参考书、多媒体资料和实验设备等。
c课程设计车辆管理

c 课程设计车辆管理一、教学目标本课程的学习目标包括知识目标、技能目标和情感态度价值观目标。
知识目标要求学生掌握车辆管理的基本概念、法律法规和操作流程。
技能目标要求学生能够运用所学知识进行车辆管理的实际操作,如车辆登记、检验、保险和事故处理等。
情感态度价值观目标要求学生树立正确的车辆管理意识,遵守交通法规,注重交通安全。
通过本课程的学习,学生将能够:1.描述车辆管理的基本概念和法律法规。
2.解释车辆管理的操作流程和相关规定。
3.应用所学知识进行车辆管理的实际操作。
4.展示正确的车辆管理意识和交通安全素养。
二、教学内容根据课程目标,教学内容主要包括车辆管理的基本概念、法律法规、操作流程和交通安全知识。
具体安排如下:1.车辆管理的基本概念:介绍车辆管理的定义、目的和意义,让学生了解车辆管理的重要性。
2.法律法规:讲解车辆管理的相关法律法规,如《道路交通安全法》、《机动车登记规定》等,使学生掌握法律知识。
3.操作流程:讲解车辆登记、检验、保险和事故处理等操作流程,让学生学会实际操作。
4.交通安全知识:介绍交通安全的基本原则和注意事项,提高学生的交通安全意识。
三、教学方法为了激发学生的学习兴趣和主动性,本课程将采用多种教学方法,如讲授法、讨论法、案例分析法和实验法等。
1.讲授法:教师通过讲解车辆管理的基本概念、法律法规和操作流程,传授知识给学生。
2.讨论法:学生分组讨论车辆管理相关问题,培养学生的思考和沟通能力。
3.案例分析法:分析车辆管理实际案例,让学生学会运用所学知识解决实际问题。
4.实验法:学生进行车辆管理的实际操作,提高学生的实践能力。
四、教学资源为了支持教学内容和教学方法的实施,丰富学生的学习体验,我们将选择和准备以下教学资源:1.教材:选用权威、实用的车辆管理教材,为学生提供系统、全面的学习资料。
2.参考书:提供相关领域的参考书籍,拓展学生的知识视野。
3.多媒体资料:制作精美的PPT、视频等多媒体资料,增强课堂教学的趣味性。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C++面向对象程序设计课程设计报告课程名称C++面向对象程序设计课题名称车辆管理系统专业班级学号姓名指导教师年月日(一)、课程设计题目:题目4 车辆管理系统(二)、目的与要求:1、目的:(1)要求学生达到熟练掌握C++语言的基本知识和技能;(2)基本掌握面向对象程序设计的基本思路和方法;(3)能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题。
2、基本要求:(1)要求利用面向对象的方法以及C++的编程思想来完成系统的设计;(2)要求在设计的过程中,建立清晰的类层次;(3)在系统中至少要定义四个类,每个类中要有各自的属性和方法;(4)在系统的设计中,至少要用到面向对象的一种机制。
3、创新要求:在基本要求达到后,可进行创新设计,如根据查找结果进行修改的功能。
(三)、设计方法和基本原理:功能要求:1)添加车辆程序主要完成车辆信息的添加,要求编号唯一。
如果添加了重复编号的物品时,则提示用户数据添加重复并取消添加;如果车辆信息库已满,则提示不能再添加新的车辆信息。
2)查询车辆可按照三种方式进行物品的查询。
·按车辆制造公司查询:·按编号查询:·按类别查询:如果未找到,给出相应的提示信息,如果找到,则显示相应的记录信息。
3)显示车辆信息库可显示当前车辆信息库中所有的车辆信息。
4)修改车辆可根据查询结果对相应的记录进行修改,修改时注意编号的唯一性。
5)删除车辆对已添加的车辆信息进行删除。
如果当前车辆信息库为空,则提示“车辆信息库为空!”并返回操作;否则输入要删除的编号,根据编号删除该车辆信息,如果没有找到该车辆信息,则提示“该编号不存在”。
6)统计功能输出当前车辆信息库中总车辆数,以及按车辆类别,统计出当前车辆信息库中各类别的车辆数并显示。
7)保存车辆将当前系统中车辆信息存入文件中。
8)读取车辆将保存在文件中的车辆信息读入到当前系统中,以供用户使用。
在完成以上基本功能的基础上,可自行进行扩展或完善。
3、问题的解决方案:根据系统功能要求,可以将问题解决分为以下步骤:1)应用系统分析,建立该系统的功能模块框图以及界面的组织和设计;2)分析系统中的各个实体以及它们之间的关系;3)根据问题描述,设计系统的类层次;4)完成类层次中各个类的描述;5)完成类中各个成员函数的定义;6)完成系统的应用模块;7)功能调试;8)完成系统总结报告。
目录1.系统需求分析 (2)2.总体设计 (2)3.详细设计及实现 (2)4.系统调试........................................................................... 错误!未定义书签。
5.结论 .................................................................................. 错误!未定义书签。
6.心得体会........................................................................... 错误!未定义书签。
7.参考书目........................................................................... 错误!未定义书签。
1.系统需求分析1.1系统设计的目的与意义:随着社会的进步和人们生活水平的提高,车辆作为交通工具,已经成为人们日常生活中不可缺少的一部分.大大增加了交通压力,同时,也对车辆里的管理有了一个更高的要求.因此,需要一个车辆管理系统来对各种车辆的各种信息进行统一管理.1.2 系统功能需求:本系统有三个类:Car类、Truck类、Bus类,存储小轿车信息、卡车信息、大客车信息。
1添加车辆程序主要完成车辆信息的添加,要求编号唯一。
如果添加了重复编号的物品时,则提示用户数据添加重复并取消添加;如果车辆信息库已满,则提示不能再添加新的车辆信息。
2查询车辆可按照三种方式进行物品的查询。
·按车辆制造公司查询:·按编号查询:·按类别查询:如果未找到,给出相应的提示信息,如果找到,则显示相应的记录信息。
3显示车辆信息库可显示当前车辆信息库中所有的车辆信息。
4修改车辆可根据查询结果对相应的记录进行修改,修改时注意编号的唯一性。
5删除车辆对已添加的车辆信息进行删除。
如果当前车辆信息库为空,则提示“车辆信息库为空!”并返回操作;否则输入要删除的编号,根据编号删除该车辆信息,如果没有找到该车辆信息,则提示“该编号不存在”。
6统计功能输出当前车辆信息库中总车辆数,以及按车辆类别,统计出当前车辆信息库中各类别的车辆数并显示。
7保存车辆将当前系统中车辆信息存入文件中。
8读取车辆将保存在文件中的车辆信息读入到当前系统中,以供用户使用。
2.总体设计2.1 系统功能分析:系统通过调用函数来实现信息录入、信息修改、信息删除、信息查询以及数据保存文件等功能。
add()函数用于录入信息;modify()函数用来修改信息;del()函数用来修改信息;search()函数用来查询车辆信息;read()函数用于将文件中的数据读取到存中;save()函数用于将存中的信息存入文件;主函数main()用于调用这些函数。
2.2系统功能模块划分与设计:系统定义了Car类、Truck类、Bus类这三个类,定义了add()、modify ()、del()、read()、save()、search()等函数来实现系统所需功能。
2.3 系统功能模块图:2.4 类的设计(1)Base类(抽象类)的设计:图3.1 Base类(2)小轿车类的设计:图3.2小轿车类(3)卡车类的设计:(4)大客车类的设计:图3.4 大卡车类3.详细设计及实现3.1 Base类(抽象类)的实现class Base{public:virtual void read()=0;virtual void add()=0;virtual void modify(int)=0;virtual void del(int)=0;virtual void save()=0;virtual void search()=0;};3.2 小轿车类的实现Car.hclass Car:public Base{public:double carFee;char carID[20];char carName[20];void read();void add();void modify(int);void del(int);void save();void search();};Car.cppvoid Car::read(){ifstream carfile;carfile.open ("轿车信息.txt");carfile>>car[count_car].carID>>car[count_car].carName>>car[count_ car].carFee;while(!carfile.eof()){count_car++;carfile>>car[count_car].carID>>car[count_car].carName>>car[co unt_car].carFee;}carfile.close();}void Car::add(){//存入对象数组中strcpy(car[count_car].carID,carID);strcpy(car[count_car].carName,carName);car[count_car].carFee=carFee;count_car++;}void Car::modify(int index){strcpy(car[index-1].carID,carID);strcpy(car[index-1].carName,carName);car[index-1].carFee=carFee;}void Car::del(int index){//前移其后记录for(int i=index;i<=count_car-1;i++){strcpy(car[i-1].carID,car[i].carID); strcpy(car[i-1].carName,car[i].carName);car[i-1].carFee=car[i].carFee;}count_car--;}void Car::search(){for(int i=0;i<count_car-1;i++){if(strcmp(car[i].carID,carID)==0||strcmp(car[i].carName,carName) ==0){cout<<"轿车车牌号"<<"轿车品牌"<<"轿车油耗费用"<<endl;cout<<car[i].carID<<" "<<car[i].carName<<" "<<car[i].carFee<<endl;break;}elsecout<<"无此轿车数据!"<<endl;break;}}void Car::save(){ofstream carfile;carfile.open("轿车信息.txt");for(int i=0;i<=count_car-1;i++)carfile<<car[i].carID<<" "<<car[i].carName<<" "<<car[i].carFee<<endl;carfile.close();}3.3卡车类的实现Truck.hclass Truck:public Base{public:char truckID[20];char truckName[20];int truckNum;void read();void add();void modify(int);void del(int);void save();void search();};Truck.cppvoid Truck::read(){ifstream truckfile;truckfile.open("卡车信息.txt");truckfile>>truck[count_truck].truckID>>truck[count_truck].tru ckName>>truck[count_truck].truckNum;while(!truckfile.eof()){count_truck++;truckfile>>truck[count_truck].truckID>>truck[count_truck].t ruckName>>truck[count_truck].truckNum;}truckfile.close();}void Truck::add(){//存入对象数组中strcpy(truck[count_truck].truckName,truckName);strcpy(truck[count_truck].truckID,truckID);truck[count_truck].truckNum=truckNum;count_truck++;}void Truck::modify(int index){strcpy(truck[index-1].truckID,truckID);strcpy(truck[index-1].truckName,truckName);truck[index-1].truckNum=truckNum;}void Truck::del(int index){//前移其后记录for(int i=index;i<=count_truck-1;i++){strcpy(truck[i-1].truckID,truckID);strcpy(truck[i-1].truckName,truckName);truck[i-1].truckNum=truckNum;}count_truck--;}void Truck::search(){for(int i=0;i<count_truck-1;i++){if(strcmp(truck[i].truckID,truckID)==0){cout<<"卡车车牌号"<<"卡车品牌"<<"卡车载重数(吨)"<<endl;cout<<truck[i].truckID<<" "<<truck[i].truckName<<" "<<truck[i].truckNum<<endl;break;}elsecout<<"无此卡车数据!"<<endl;break;}}void Truck::save(){ofstream truckfile;truckfile.open("卡车信息.txt");for(int i=0;i<=count_truck-1;i++)truckfile<<truck[i].truckID<<" "<<truck[i].truckName<<" "<<truck[i].truckNum;truckfile.close();}3.4大客车类的实现Bus.hclass Bus:public Base{public:char busName[20];char busID[20];int busNum;void read();void add();void modify(int);void del(int);void save();void search();};Bus.cppvoid Bus::read(){fstream busfile("客车信息.txt",ios::in|ios::out);busfile>>bus[count_bus].busID>>bus[count_bus].busName>>bus[count _bus].busNum;while(!busfile.eof()){count_bus++;busfile>>bus[count_bus].busID>>bus[count_bus].busName>>bus[co unt_bus].busNum;}busfile.close();}void Bus::add(){//存入对象数组中strcpy(bus[count_bus].busID,busID);strcpy(bus[count_bus].busName,busName);bus[count_bus].busNum=busNum;count_bus++;}void Bus::modify(int index){strcpy(bus[index-1].busID,busID);strcpy(bus[index-1].busName,busName);bus[index-1].busNum=busNum;}void Bus::del(int index){//前移其后记录for(int i=index;i<=count_bus-1;i++){strcpy(bus[i-1].busID,bus[i].busID);strcpy(bus[i-1].busName,bus[i].busName);bus[i-1].busNum=bus[i].busNum;}count_bus--;}void Bus::search(){for(int i=0;i<count_bus-1;i++){if(strcmp(bus[i].busID,busID)==0){cout<<"客车车牌号"<<"客车品牌"<<"客车最大载客数(人)"<<endl;cout<<bus[i].busID<<" "<<bus[i].busName<<" "<<bus[i].busNum<<endl;break;}elsecout<<"无此客车数据!"<<endl;break;}}void Bus::save(){ofstream busfile;busfile.open("客车信息.txt");for(int i=0;i<=count_bus-1;i++)busfile<<bus[i].busID<<" "<<bus[i].busName<<" "<<bus[i].busNum<<endl;busfile.close();}3.5 main.cpp#include <iostream.h>#include<iomanip.h>#include <fstream.h>#include <string.h>#include <stdlib.h>Car car[MAXcar];Truck truck[MAXtruck];Bus bus[MAXbus];int count_car=0;int count_truck=0;int count_bus=0;Base *p=NULL;char c;//轿车管理子菜单void car_manage(){int choice,i=0;bool quit=false;while(1){system("cls");cout<<"**********轿车管理子菜单**********"<<endl;cout<<" 1.添加轿车信息"<<endl;cout<<" 2.修改轿车信息"<<endl;cout<<" 3.删除轿车信息"<<endl;cout<<" 4.查询轿车信息"<<endl;cout<<" 5.显示所有轿车信息"<<endl;cout<<" 0.退出"<<endl;cout<<"**********************************"<<endl;cout<<"请输入所要操作的编号:";cin>>choice;switch(choice){case 1:{Car car1;p=&car1;cout<<"请输入轿车车牌号、轿车品牌、油耗费用:"<<endl;cin>>car1.carID>>car1.carName>>car1.carFee;cout<<"是否保存轿车信息?(不区分大小写)是(y/Y)否(n/N)"<<endl;cin>>c;if(c=='y'||c=='Y'){p->add();p->save();}break;}case 2:{Car car2;p=&car2;int index;for(int i=0;i<count_car;i++)cout<<i+1<<"."<<car[i].carID<<""<<car[i].carName<<" "<<car[i].carFee<<endl;cout<<"请选择轿车序号:"<<endl;cin>>index;cout<<"请输入要修改的轿车车牌号、轿车品牌、油耗费用:"<<endl;cin>>car2.carID>>car2.carName>>car2.carFee;cout<<"是否保存轿车信息?(不区分大小写)是(y/Y)否(n/N)"<<endl;cin>>c;if(c=='y'||c=='Y'){p->modify(index);p->save();}break;}case 3:{p=&car3;int index;for(int i=0;i<count_car;i++)cout<<i+1<<"."<<car[i].carID<<""<<car[i].carName<<" "<<car[i].carFee<<endl;cout<<"请选择要修改的轿车车牌号、轿车品牌、油耗费用的序列号:"<<endl;cin>>index;cout<<"是否保存轿车信息?(不区分大小写)是(y/Y)否(n/N)"<<endl;cin>>c;if(c=='y'||c=='Y'){p->del(index);p->save();}break;}case 4:{p=&car4;cout<<"请输入轿车的车名:"<<endl;cin>>car4.carName;car4.search();system("pause");break;}case 5:{cout<<"轿车车牌号"<<"轿车品牌"<<"轿车油耗费用"<<endl;for(int i=0;i<count_car;i++)cout<<i+1<<"."<<car[i].carID<<" "<<car[i].carName<<" "<<car[i].carFee<<endl;system("pause");if(count_car==0)cout<<setw(20)<<"轿车信息库为空!"<<endl;system("pause");break;}case 0:quit=true;break;default:cout<<"请输入0~5之间的数字!"<<endl; break;}if(quit==true)break;}system("cls");return;}//卡车管理子菜单void truck_manage(){int choice;bool quit=false;while(1){system("cls");cout<<"***********卡车管理子菜单**********"<<endl;cout<<" 1.添加卡车信息"<<endl;cout<<" 2.修改卡车信息"<<endl;cout<<" 3.删除卡车信息"<<endl;cout<<" 4.查询卡车信息"<<endl;cout<<" 5.显示所有卡车信息"<<endl;cout<<" 0.退出"<<endl;cout<<"***********************************"<<endl;cout<<"请输入所要操作的编号:";cin>>choice;switch(choice){case 1:{Truck truck1;p=&truck1;cout<<"请输入卡车的车牌号、卡车品牌、载重数(吨):"<<endl;cin>>truck1.truckID>>truck1.truckName>>truck1.truckNum;cout<<"是否保存卡车信息?(不区分大小写)是(y/Y)否(n/N)"<<endl;cin>>c;if(c=='y'||c=='Y'){p->add();p->save();}break;}case 2:{Truck truck2;p=&truck2;int index;for(int i=0;i<count_truck;i++)cout<<i+1<<"."<<truck[i].truckID<<""<<truck[i].truckName<<endl;cout<<"请选择要修改的卡车信息的序列号:"<<endl;cin>>index;cout<<"请输入要修改卡车的车牌号、卡车品牌、载重数(吨):"<<endl;cin>>truck2.truckID>>truck2.truckName>>truck2.truckNum;cout<<"是否保存卡车信息?(不区分大小写)是(y/Y)否(n/N)"<<endl;cin>>c;if(c=='y'||c=='Y'){p->modify(index);p->save();}break;}case 3:{Truck truck3;p=&truck3;int index;for(int i=0;i<count_truck;i++)cout<<i+1<<"."<<truck[i].truckID<<""<<truck[i].truckName<<" "<<truck[i].truckNum<<endl;cout<<"请选择要删除的卡车信息序列号:"<<endl;cin>>index;cout<<"是否保存卡车信息?(不区分大小写)是(y/Y)否(n/N)"<<endl;cin>>c;if(c='n'||c=='N'){p->del(index);p->save();}break;}case 4:{Truck truck4;cout<<"请输入卡车的车牌号:"<<endl;cin>>truck4.truckID;truck4.search();system("pause");break;}case 5:{cout<<"卡车车牌号"<<"卡车品牌"<<"卡车载重数(吨)"<<endl;for(int i=0;i<count_truck;i++)cout<<i+1<<"."<<truck[i].truckID<<""<<truck[i].truckName<<" "<<truck[i].truckNum<<endl;system("pause");if(count_truck==0)cout<<setw(20)<<"卡车信息库为空!"<<endl;break;}case 0:quit=true;break;default:cout<<"请输入0~5之间的数字!"<<endl;break;}if(quit==true)break;}system("cls");return;}//客车管理子菜单void bus_manage(){int choice;bool quit=false;while(1){system("cls");cout<<"***********客车管理子菜单**********"<<endl;cout<<" 1.添加客车信息"<<endl;cout<<" 2.修改客车信息"<<endl;cout<<" 3.删除客车信息"<<endl;cout<<" 4.查询客车信息"<<endl;cout<<" 5.显示所有客车信息"<<endl;cout<<" 0.退出"<<endl;cout<<"***********************************"<<endl;cout<<"请输入所要操作的编号:";cin>>choice;switch(choice){case 1:{Bus bus1;p=&bus1;cout<<"请输入要添加的客车的车牌号、客车品牌、最大载客数(人):"<<endl;cin>>bus1.busID>>bus1.busName>>bus1.busNum;cout<<"是否保存客车信息?(不区分大小写)是(y/Y)否(n/N)"<<endl;cin>>c;if(c=='y'||c=='Y'){p->add();p->save();}break;}case 2:{Bus bus2;p=&bus2;int index;for(int i=0;i<count_bus;i++)cout<<i+1<<"."<<bus[i].busID<<" "<<bus[i].busName<<" "<<bus[i].busNum<<endl;cout<<"请选择要修改的客车信息序列号:"<<endl;cin>>index;cout<<"请输入要修改的客车车牌号、客车品牌、最大载客数(人):"<<endl;cin>>bus2.busID>>bus2.busName>>bus2.busNum;cout<<"是否保存客车信息?(不区分大小写)是(y/Y)否(n/N)"<<endl;cin>>c;if(c=='y'||c=='Y'){p->modify(index);p->save();}break;case 3:{Bus bus3;p=&bus3;int index;for(int i=0;i<count_bus;i++)cout<<i+1<<"."<<bus[i].busID<<" "<<bus[i].busName<<" "<<bus[i].busNum<<endl;cout<<"请选择要删除的客车信息序列号:"<<endl;cin>>index;cout<<"是否保存客车信息?(不区分大小写)是(y/Y)否(n/N)"<<endl;cin>>c;if(c=='y'||c=='Y'){p->del(index);p->save();}break;}case 4:Bus bus4;cout<<"请输入客车的车牌号:"<<endl;cin>>bus4.busID;bus4.search();system("pause");break;}case 5:{cout<<"客车车牌号"<<"客车品牌"<<"客车最大载客数(人)"<<endl;for(int i=0;i<count_bus;i++)cout<<i+1<<"."<<bus[i].busID<<" "<<bus[i].busName<<" "<<bus[i].busNum<<endl;system("pause");if(count_bus==0)cout<<setw(20)<<"客车信息库为空!"<<endl;break;}case 0:quit=true;break;default:cout<<"请输入0~5之间的数字!"<<endl;break;}if(quit==true)break;}system("cls");return;}//主函数容void main(){//将各个文件中的数据依次读入存Car (car);(car).read();Truck (truck);(truck).read();Bus (bus);(bus).read();int choice=1;//显示主菜单while(1){cout<<"**************主菜单**************"<<endl;cout<<" 1.轿车信息管理"<<endl;cout<<" 2.卡车信息管理"<<endl;cout<<" 3.客车信息管理"<<endl;cout<<" 0.退出"<<endl;cout<<"**********************************"<<endl;cout<<"请输入所要操作的编号:";cin>>choice;switch(choice){case 1: car_manage();break;case 2: truck_manage();break;case 3: bus_manage();break;case 0: cout<<"您的使用!"<<endl; return;break;default:cout<<"请输入0~3之间的数字!"<<endl;break;}system("cls");}}//小轿车管理子菜单void car_manage(){int choice,i=0;bool quit=false;while(1){system("cls");cout<<"**********轿车管理子菜单**********"<<endl;cout<<" 1.添加轿车信息"<<endl;cout<<" 2.修改轿车信息"<<endl;cout<<" 3.删除轿车信息"<<endl;cout<<" 4.查询轿车信息"<<endl;cout<<" 5.显示所有轿车信息"<<endl;cout<<" 0.退出"<<endl;cout<<"**********************************"<<endl;cout<<"请输入所要操作的编号:";cin>>choice;switch(choice){case 1:{Car car1;p=&car1;cout<<"请输入轿车车牌号、轿车品牌、油耗费用:"<<endl;cin>>car1.carID>>car1.carName>>car1.carFee;cout<<"是否保存轿车信息?(不区分大小写)是(y/Y)否(n/N)"<<endl;cin>>c;if(c=='y'||c=='Y'){p->add();p->save();}break;}case 2:{Car car2;p=&car2;int index;for(int i=0;i<count_car;i++)cout<<i+1<<"."<<car[i].carID<<""<<car[i].carName<<" "<<car[i].carFee<<endl;cout<<"请选择轿车序号:"<<endl;cin>>index;cout<<"请输入要修改的轿车车牌号、轿车品牌、油耗费用:"<<endl;cin>>car2.carID>>car2.carName>>car2.carFee;cout<<"是否保存轿车信息?(不区分大小写)是(y/Y)否(n/N)"<<endl;cin>>c;if(c=='y'||c=='Y'){p->modify(index);p->save();}break;}case 3:{Car car3;p=&car3;int index;for(int i=0;i<count_car;i++)cout<<i+1<<"."<<car[i].carID<<""<<car[i].carName<<" "<<car[i].carFee<<endl;cout<<"请选择要修改的轿车车牌号、轿车品牌、油耗费用的序列号:"<<endl;cin>>index;cout<<"是否保存轿车信息?(不区分大小写)是(y/Y)否(n/N)"<<endl;cin>>c;if(c=='y'||c=='Y'){p->del(index);p->save();}break;}case 4:{Car car4;p=&car4;cout<<"请输入轿车的车名:"<<endl;cin>>car4.carName;car4.search();system("pause");break;}case 5:{cout<<"轿车车牌号"<<"轿车品牌"<<"轿车油耗费用"<<endl; for(int i=0;i<count_car;i++)cout<<i+1<<"."<<car[i].carID<<" "<<car[i].carName<<" "<<car[i].carFee<<endl;system("pause");if(count_car==0)cout<<setw(20)<<"轿车信息库为空!"<<endl;system("pause");break;}case 0:quit=true;break;default:cout<<"请输入0~5之间的数字!"<<endl; break;}if(quit==true)break;}system("cls");return;}//卡车管理子菜单void truck_manage(){int choice;bool quit=false;while(1){system("cls");cout<<"***********卡车管理子菜单**********"<<endl;cout<<" 1.添加卡车信息"<<endl;cout<<" 2.修改卡车信息"<<endl;cout<<" 3.删除卡车信息"<<endl;cout<<" 4.查询卡车信息"<<endl;cout<<" 5.显示所有卡车信息"<<endl;cout<<" 0.退出"<<endl;cout<<"***********************************"<<endl;cout<<"请输入所要操作的编号:";cin>>choice;switch(choice){case 1:{Truck truck1;p=&truck1;cout<<"请输入卡车的车牌号、卡车品牌、载重数(吨):"<<endl;cin>>truck1.truckID>>truck1.truckName>>truck1.truckNum; cout<<"是否保存卡车信息?(不区分大小写)是(y/Y)否(n/N)"<<endl;cin>>c;if(c=='y'||c=='Y'){p->add();p->save();}break;}case 2:{Truck truck2;p=&truck2;int index;for(int i=0;i<count_truck;i++)cout<<i+1<<"."<<truck[i].truckID<<""<<truck[i].truckName<<endl;cout<<"请选择要修改的卡车信息的序列号:"<<endl;cin>>index;cout<<"请输入要修改卡车的车牌号、卡车品牌、载重数(吨):"<<endl;cin>>truck2.truckID>>truck2.truckName>>truck2.truckNum;cout<<"是否保存卡车信息?(不区分大小写)是(y/Y)否(n/N)"<<endl;cin>>c;if(c=='y'||c=='Y'){p->modify(index);p->save();}break;}case 3:{Truck truck3;p=&truck3;int index;for(int i=0;i<count_truck;i++)cout<<i+1<<"."<<truck[i].truckID<<""<<truck[i].truckName<<" "<<truck[i].truckNum<<endl;cout<<"请选择要删除的卡车信息序列号:"<<endl;cin>>index;cout<<"是否保存卡车信息?(不区分大小写)是(y/Y)否(n/N)"<<endl;cin>>c;if(c='n'||c=='N'){p->del(index);p->save();}break;}case 4:{Truck truck4;cout<<"请输入卡车的车牌号:"<<endl;cin>>truck4.truckID;truck4.search();system("pause");break;}case 5:{cout<<"卡车车牌号"<<"卡车品牌"<<"卡车载重数(吨)"<<endl;for(int i=0;i<count_truck;i++)cout<<i+1<<"."<<truck[i].truckID<<""<<truck[i].truckName<<" "<<truck[i].truckNum<<endl;system("pause");if(count_truck==0)cout<<setw(20)<<"卡车信息库为空!"<<endl;break;}case 0:quit=true;break;default:cout<<"请输入0~5之间的数字!"<<endl;break;}if(quit==true)break;}system("cls");return;}//大客车管理子菜单void bus_manage(){int choice;bool quit=false;while(1){system("cls");cout<<"***********客车管理子菜单**********"<<endl; cout<<" 1.添加客车信息"<<endl;cout<<" 2.修改客车信息"<<endl;cout<<" 3.删除客车信息"<<endl;cout<<" 4.查询客车信息"<<endl;cout<<" 5.显示所有客车信息"<<endl;cout<<" 0.退出"<<endl;cout<<"***********************************"<<endl;cout<<"请输入所要操作的编号:";cin>>choice;switch(choice){case 1:{Bus bus1;p=&bus1;cout<<"请输入要添加的客车的车牌号、客车品牌、最大载客数(人):"<<endl;cin>>bus1.busID>>bus1.busName>>bus1.busNum;cout<<"是否保存客车信息?(不区分大小写)是(y/Y)否(n/N)"<<endl;cin>>c;if(c=='y'||c=='Y'){p->add();p->save();}break;}case 2:{Bus bus2;p=&bus2;。