C课程设计之车辆管理系统
c语言车辆管理系统课程设计之欧阳法创编

#include<stdio.h>#include<stdlib.h>#include<string.h>#define MAX 3 /*车库容量*/#define price 0.5 /*每车每分钟费用*/ typedef struct time{int hour;int min;}Time; /*时间结点*/typedef struct node{char num[10];Time reach;Time leave;}CarNode;/*车辆信息结点*/ typedef struct NODE{CarNode *stack[MAX + 1];int top;}Moni_Cheku;typedef struct car{CarNode *data;struct car *next;}QueueNode;typedef struct Node{QueueNode *head;QueueNode *rear;}Moni_Biandao;void InitStack(Moni_Cheku *); /*初始化车库*/int InitQueue(Moni_Biandao *);/*初始化便道*/int Arrival(Moni_Cheku *, Moni_Biandao *); /*车辆到达*/void Leave(Moni_Cheku *, Moni_Cheku *, Moni_Biandao *); /*车辆离开*/void List(Moni_Cheku, Moni_Biandao); /*显示车库和便道的存车信息*/int main(){Moni_Cheku Enter, Temp;Moni_Biandao Wait;int ch;InitStack(&Enter); /*初始化车站*/InitStack(&Temp); /*初始化让路的临时链表*/ InitQueue(&Wait); /*初始化便道*/printf("\n");printf(" ^_^欢迎进入停车场管理系统1!^_^\n"); printf("\n");printf("提示! (1).该车库的最大容量为:%d;\n", MAX); printf(" (2).该车库的收费标准为:%4.2f元/(辆*分钟).\n", price);while (1){system("CLS");printf("********************主菜单********************\n");printf("1.车辆到达");printf(" 2.车辆离开");printf(" 3.列表显示");printf(" 4.退出系统\n");printf("******************************************* ***\n");printf("请选择(1-4):[ ]\b\b");while (1){scanf("%d",&ch);if (ch >= 1 && ch <= 4)break;else printf("错误!请重选(1-4):[ ]\b\b");}switch (ch){case 1:Arrival(&Enter, &Wait); break; /*车辆到达*/ case 2:Leave(&Enter, &Temp, &Wait); break; /*车辆离开*/case 3:List(Enter, Wait); break; /*打印列表信息*/case 4:exit(0); /*退出主程序*/default: break;}}return 0;}void InitStack(Moni_Cheku *s) /*初始化车库*/{int i;s->top = 0;for (i = 0; i <= MAX; i++)s->stack[s->top] = NULL;}int InitQueue(Moni_Biandao *Q) /*初始化便道*/{Q->head = (QueueNode *)malloc(sizeof(QueueNode)); if (Q->head != NULL){Q->head->next = NULL;Q->rear = Q->head;return(1);}else return(-1);}void PRINT(CarNode *p, int room) /*输出出库车的信息*/{int A1, A2, B1, B2;{printf("请输入离开的时间:/**:**/");scanf("%d:%d", &(p->leave.hour), &(p->leave.min)); printf("离开车辆的车牌号为:");puts(p->num);printf("其到达时间为: %d:%d\n", p->reach.hour, p->reach.min);printf("离开时间为: %d:%d\n", p->leave.hour, p->leave.min);A1 = p->reach.hour;A2 = p->reach.min;B1 = p->leave.hour;B2 = p->leave.min;printf("应交费用为:%4.2f元", ((B1 - A1) * 60 + (B2 - A2))*price);free(p);}}int Arrival(Moni_Cheku *Enter, Moni_Biandao *W) /*车辆到达*/{CarNode *p;QueueNode *t;p = (CarNode *)malloc(sizeof(CarNode));fflush(stdin);printf("请输入车牌号(例如:中CUG888):");scanf("%s",&(p->num));if (Enter->top < MAX) /*车库未满,车进车库*/{Enter->top++;printf("该车在车库位置%d.\n", Enter->top);printf("请输入到达时间(**:**):");scanf("%d:%d", &(p->reach.hour), &(p->reach.min)); Enter->stack[Enter->top] = p;return(1);}else /*车库已满,车进便道*/{printf("该车须在便道等待!\n");t = (QueueNode *)malloc(sizeof(QueueNode));t->data = p;t->next = NULL;W->rear->next = t;W->rear = t;return(1);}}void Leave(Moni_Cheku *Enter, Moni_Cheku *Temp, Moni_Biandao *W) /*车辆离开*/{int i, room;CarNode *p, *t;QueueNode *q;/*判断车库内是否有车*/if (Enter->top > 0) /*有车*/{printf("请输入车在车库的位置(1--%d):", Enter->top);/*输入车辆离开的信息*/while (1){scanf("%d", &room);if (room >= 1 && room <= Enter->top) break;else printf("错误!请重选:");}while (Enter->top > room) /*车辆离开*/{Temp->top++;Temp->stack[Temp->top] = Enter->stack[Enter->top];Enter->stack[Enter->top] = NULL;Enter->top--;}p = Enter->stack[Enter->top];Enter->stack[Enter->top] = NULL;Enter->top--;while (Temp->top >= 1){Enter->top++;Enter->stack[Enter->top] = Temp->stack[Temp->top];Temp->stack[Temp->top] = NULL;Temp->top--;}PRINT(p, room); /*判断通道上是否有车及车库是否已满*/if ((W->head != W->rear) && Enter->top < MAX) /*便道的车辆进入车库*/{q = W->head->next;t = q->data;Enter->top++;printf("\n便道的%s号车进入车场第%d位置.", t->num, Enter->top);printf("\n请输入现在的时间(**:**):");scanf("%d:%d", &(t->reach.hour), &(t->reach.min)); W->head->next = q->next;if (q == W->rear) W->rear = W->head;Enter->stack[Enter->top] = t;free(q);}else printf("\n便道里没有车.\n");}else printf("车库里没有车!\n"); /*没车*/}void List1(Moni_Cheku *S) /*列表显示车库信息*/ {int i;if (S->top > 0) /*判断车库内是否有车*/{printf("车库号到达时间 \t车牌号\n");for (i = 1; i <= S->top; i++){printf(" %d ", i);printf(" \t%d:%d", S->stack[i]->reach.hour, S->stack[i]->reach.min);printf("\t\t%s\n",S->stack[i]->num);}}else printf("车库里没有车\n");}void List2(Moni_Biandao *W) /*列表显示便道信息*/{QueueNode *p;p = W->head->next;if (W->head != W->rear) /*判断便道上是否有车*/ {printf("在便道里等待的车辆的号码为:\n");while (p != NULL){puts(p->data->num);p = p->next;}}else printf("便道里没有车.\n");}void List(Moni_Cheku S, Moni_Biandao W) {int flag, tag;flag = 1;while (flag){printf("**********查看**********\n"); printf("1.车库2.便道3.返回\n");printf("************************\n"); printf("请选择(1-3):[ ]\b\b");while (1){scanf("%d", &tag);if (tag >= 1 && tag <= 3) break;else printf("错误!请重选(1-3):[ ]\b\b");}switch (tag){case 1:List1(&S);break;/*列表显示车库信息*/ case 2:List2(&W);break; /*列表显示便到信息*/ case 3:flag = 0;break;default:break;}}}。
c课程设计之车辆管理系统

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

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

#include<stdio.h>#include<stdlib.h>#include<string.h>#define MAX 3 /*车库容量*/#define price 0.5 /*每车每分钟费用*/ typedef struct time{int hour;int min;}Time; /*时间结点*/typedef struct node{char num[10];Time reach;Time leave;}CarNode;/*车辆信息结点*/typedef struct NODE{CarNode *stack[MAX + 1];int top;}Moni_Cheku;typedef struct car{CarNode *data;struct car *next;}QueueNode;typedef struct Node{QueueNode *head;QueueNode *rear;}Moni_Biandao;void InitStack(Moni_Cheku *); /*初始化车库*/int InitQueue(Moni_Biandao *);/*初始化便道*/int Arrival(Moni_Cheku *, Moni_Biandao *); /*车辆到达*/void Leave(Moni_Cheku *, Moni_Cheku *, Moni_Biandao *); /*车辆离开*/void List(Moni_Cheku, Moni_Biandao); /*显示车库和便道的存车信息*/int main(){Moni_Cheku Enter, Temp;Moni_Biandao Wait;int ch;InitStack(&Enter); /*初始化车站*/InitStack(&Temp); /*初始化让路的临时链表*/ InitQueue(&Wait); /*初始化便道*/printf("\n");printf(" ^_^欢迎进入停车场管理系统1!^_^\n");printf("\n");printf("提示! (1).该车库的最大容量为:%d;\n", MAX); printf(" (2).该车库的收费标准为:%4.2f元/(辆*分钟).\n", price);while (1){system("CLS");printf("********************主菜单********************\n");printf("1.车辆到达");printf(" 2.车辆离开");printf(" 3.列表显示");printf(" 4.退出系统\n");printf("**********************************************\n");printf("请选择(1-4):[ ]\b\b");while (1){scanf("%d",&ch);if (ch >= 1 && ch <= 4)break;else printf("错误!请重选(1-4):[ ]\b\b");}switch (ch){case 1:Arrival(&Enter, &Wait); break; /*车辆到达*/case 2:Leave(&Enter, &Temp, &Wait); break; /*车辆离开*/case 3:List(Enter, Wait); break; /*打印列表信息*/ case 4:exit(0); /*退出主程序*/default: break;}}return 0;}void InitStack(Moni_Cheku *s) /*初始化车库*/{int i;s->top = 0;for (i = 0; i <= MAX; i++)s->stack[s->top] = NULL;}int InitQueue(Moni_Biandao *Q) /*初始化便道*/{Q->head = (QueueNode *)malloc(sizeof(QueueNode));if (Q->head != NULL){Q->head->next = NULL;Q->rear = Q->head;return(1);}else return(-1);}void PRINT(CarNode *p, int room) /*输出出库车的信息*/{int A1, A2, B1, B2;{printf("请输入离开的时间:/**:**/");scanf("%d:%d", &(p->leave.hour), &(p->leave.min)); printf("离开车辆的车牌号为:");puts(p->num);printf("其到达时间为: %d:%d\n", p->reach.hour, p->reach.min);printf("离开时间为: %d:%d\n", p->leave.hour, p->leave.min);A1 = p->reach.hour;A2 = p->reach.min;B1 = p->leave.hour;B2 = p->leave.min;printf("应交费用为:%4.2f元", ((B1 - A1) * 60 + (B2 - A2))*price);free(p);}}int Arrival(Moni_Cheku *Enter, Moni_Biandao *W) /*车辆到达*/{CarNode *p;QueueNode *t;p = (CarNode *)malloc(sizeof(CarNode));fflush(stdin);printf("请输入车牌号(例如:中CUG888):");scanf("%s",&(p->num));if (Enter->top < MAX) /*车库未满,车进车库*/{Enter->top++;printf("该车在车库位置%d.\n", Enter->top);printf("请输入到达时间(**:**):");scanf("%d:%d", &(p->reach.hour), &(p->reach.min)); Enter->stack[Enter->top] = p;return(1);}else /*车库已满,车进便道*/{printf("该车须在便道等待!\n");t = (QueueNode *)malloc(sizeof(QueueNode));t->data = p;t->next = NULL;W->rear->next = t;W->rear = t;return(1);}}void Leave(Moni_Cheku *Enter, Moni_Cheku *Temp, Moni_Biandao *W) /*车辆离开*/{int i, room;CarNode *p, *t;QueueNode *q;/*判断车库内是否有车*/if (Enter->top > 0) /*有车*/{printf("请输入车在车库的位置(1--%d):", Enter->top);/*输入车辆离开的信息*/while (1){scanf("%d", &room);if (room >= 1 && room <= Enter->top) break;else printf("错误!请重选:");}while (Enter->top > room) /*车辆离开*/{Temp->top++;Temp->stack[Temp->top] = Enter->stack[Enter->top];Enter->stack[Enter->top] = NULL;Enter->top--;}p = Enter->stack[Enter->top];Enter->stack[Enter->top] = NULL;Enter->top--;while (Temp->top >= 1){Enter->top++;Enter->stack[Enter->top] = Temp->stack[Temp->top];Temp->stack[Temp->top] = NULL;Temp->top--;}PRINT(p, room); /*判断通道上是否有车及车库是否已满*/ if ((W->head != W->rear) && Enter->top < MAX) /*便道的车辆进入车库*/{q = W->head->next;t = q->data;Enter->top++;printf("\n便道的%s号车进入车场第%d位置.", t->num, Enter->top);printf("\n请输入现在的时间(**:**):");scanf("%d:%d", &(t->reach.hour), &(t->reach.min)); W->head->next = q->next;if (q == W->rear) W->rear = W->head;Enter->stack[Enter->top] = t;free(q);}else printf("\n便道里没有车.\n");}else printf("车库里没有车!\n"); /*没车*/}void List1(Moni_Cheku *S) /*列表显示车库信息*/{int i;if (S->top > 0) /*判断车库内是否有车*/{printf("车库号到达时间 \t车牌号\n");for (i = 1; i <= S->top; i++){printf(" %d ", i);printf(" \t%d:%d", S->stack[i]->reach.hour, S->stack[i]->reach.min);printf("\t\t%s\n",S->stack[i]->num);}}else printf("车库里没有车\n");}void List2(Moni_Biandao *W) /*列表显示便道信息*/{QueueNode *p;p = W->head->next;if (W->head != W->rear) /*判断便道上是否有车*/{printf("在便道里等待的车辆的号码为:\n");while (p != NULL){puts(p->data->num);p = p->next;}}else printf("便道里没有车.\n");}void List(Moni_Cheku S, Moni_Biandao W) {int flag, tag;flag = 1;while (flag){printf("**********查看**********\n");printf("1.车库2.便道3.返回\n");printf("************************\n");printf("请选择(1-3):[ ]\b\b");while (1){scanf("%d", &tag);if (tag >= 1 && tag <= 3) break;else printf("错误!请重选(1-3):[ ]\b\b");}switch (tag){case 1:List1(&S);break;/*列表显示车库信息*/case 2:List2(&W);break; /*列表显示便到信息*/ case 3:flag = 0;break;default:break;}}}。
车辆租赁管理系统C课程设计

车辆租赁管理系统C 课程设计一、课程目标知识目标:1. 让学生理解车辆租赁管理系统的基本概念和功能需求,掌握系统设计的基本原理和步骤。
2. 使学生掌握数据库设计的基本方法,并能运用SQL语言进行数据操作。
3. 帮助学生掌握C语言编程技巧,实现车辆租赁管理系统的核心功能模块。
技能目标:1. 培养学生运用结构化分析方法进行系统需求分析的能力。
2. 培养学生运用数据库设计工具进行数据库设计的能力。
3. 提高学生编程实践能力,能够独立完成车辆租赁管理系统部分功能模块的开发。
情感态度价值观目标:1. 培养学生热爱编程,对计算机科学技术产生浓厚兴趣。
2. 培养学生具备团队协作精神,能够与他人共同完成项目任务。
3. 增强学生的责任感和使命感,认识到信息技术在现代社会中的重要作用。
课程性质:本课程为信息技术学科选修课程,结合实际项目案例,培养学生的编程实践能力和系统设计能力。
学生特点:学生具备一定的C语言基础和数据库知识,对编程和系统设计有一定兴趣,但实践经验不足。
教学要求:结合学生特点,注重理论与实践相结合,以项目为导向,培养学生的实际操作能力和解决问题的能力。
将课程目标分解为具体的学习成果,便于教学设计和评估。
二、教学内容1. 系统需求分析:讲解车辆租赁管理系统的功能需求、性能需求等,使学生掌握需求分析方法,学会编写需求规格说明书。
教材章节:第二章 系统分析与设计内容安排:2课时2. 数据库设计:介绍数据库设计的基本概念、E-R模型、关系模型等,使学生掌握数据库设计方法和SQL语言。
教材章节:第三章 数据库设计与实现内容安排:4课时3. C语言编程实践:讲解C语言在车辆租赁管理系统中的应用,包括数据结构、函数、模块化编程等,提高学生编程实践能力。
教材章节:第四章 C语言编程实践内容安排:6课时4. 系统功能实现:结合实际项目案例,讲解车辆租赁管理系统的核心功能模块,如用户管理、车辆管理、订单管理等。
教材章节:第五章 系统功能实现内容安排:8课时5. 系统测试与优化:介绍系统测试方法,让学生学会对车辆租赁管理系统进行功能测试、性能测试等,并能对系统进行优化。
车辆管理系统课程设计CSDN

车辆管理系统课程设计CSDN一、课程目标知识目标:1. 让学生理解车辆管理系统的基本概念,掌握其关键技术与功能模块;2. 使学生掌握数据库管理的基本原理,能运用SQL语句进行数据查询与操作;3. 引导学生了解计算机网络通信技术在车辆管理系统中的应用。
技能目标:1. 培养学生运用编程语言(如Python、Java等)设计并实现车辆管理系统的功能模块;2. 培养学生运用数据库技术进行数据存储、查询、更新与删除等操作;3. 提高学生团队协作能力,能与他人共同完成车辆管理系统的设计与开发。
情感态度价值观目标:1. 激发学生对计算机科学技术的兴趣,培养其探索精神和创新意识;2. 引导学生关注车辆管理系统在实际生活中的应用,提高其社会责任感;3. 培养学生严谨、勤奋的学习态度,使其具备良好的学习习惯。
本课程针对高年级学生,已具备一定的编程基础和数据库知识。
课程性质为理论与实践相结合,注重培养学生的实际操作能力和团队协作能力。
在教学过程中,教师需关注学生的个体差异,提供针对性的指导与帮助,确保学生能够达到预设的课程目标,为后续深入学习计算机科学技术打下坚实基础。
二、教学内容本课程教学内容主要包括以下三个方面:1. 车辆管理系统概述- 了解车辆管理系统的基本概念、发展历程和应用领域;- 学习车辆管理系统的功能模块,如车辆信息管理、驾驶员管理、违章处理等;- 掌握车辆管理系统的关键技术,如GPS定位、GIS地图、数据通信等。
2. 数据库技术与应用- 学习数据库的基本原理,如关系型数据库、SQL语言等;- 掌握数据库设计方法,能根据实际需求设计合理的数据库表结构;- 学习数据库操作,包括数据的增、删、改、查等。
3. 车辆管理系统的设计与实现- 学习编程语言(如Python、Java等)在车辆管理系统中的应用;- 掌握车辆管理系统的开发流程,如需求分析、系统设计、编码实现、测试等;- 学习团队协作开发,提高项目管理和沟通能力。
- 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.系统需求分析系统设计的目的与意义:随着社会的进步和人们生活水平的提高, 车辆作为交通工具, 已经成为人们日常生活中不可缺少的一部分.大大增加了交通压力, 同时,也对车辆里的管理有了一个更高的要求. 因此, 需要一个车辆管理系统来对各种车辆的各种信息进行统一管理.系统功能需求:本系统有三个类:Car类、Truck类、Bus类,存储小轿车信息、卡车信息、大客车信息。
1添加车辆程序主要完成车辆信息的添加,要求编号唯一。
如果添加了重复编号的物品时,则提示用户数据添加重复并取消添加;如果车辆信息库已满,则提示不能再添加新的车辆信息。
2查询车辆可按照三种方式进行物品的查询。
•按车辆制造公司查询:•按编号查询:•按类别查询:如果未找到,给出相应的提示信息,如果找到,则显示相应的记录信息。
3显示车辆信息库可显示当前车辆信息库中所有的车辆信息。
4修改车辆可根据查询结果对相应的记录进行修改,修改时注意编号的唯一性。
5删除车辆对已添加的车辆信息进行删除。
如果当前车辆信息库为空,则提示“车辆信息库为空!”并返回操作;否则输入要删除的编号,根据编号删除该车辆信息,如果没有找到该车辆信息,则提示“该编号不存在” 。
6统计功能输出当前车辆信息库中总车辆数,以及按车辆类别,统计出当前车辆信息库中各类别的车辆数并显示7保存车辆将当前系统中车辆信息存入文件中。
8读取车辆将保存在文件中的车辆信息读入到当前系统中,以供用户使用。
2.总体设计系统功能分析:系统通过调用函数来实现信息录入、信息修改、信息删除、信息查询以及数据保存文件等功能。
add ()函数用于录入信息;modify ()函数用来修改信息;del ()函数用来修改信息;search ()函数用来查询车辆信息;read ()函数用于将文件中的数据读取到内存中;save ()函数用于将内存中的信息存入文件内;主函数ma in ()用于调用这些函数。
系统功能模块划分与设计:系统定义了Car类、Truck类、Bus类这三个类,定义了add ()、modify ()、del ()、read ()、save()、search ()等函数来实现系统所需功能。
系统功能模块图:车辆信息管理系统类的设计(1) Base 类(抽象类)的设计void seave );) charfusName :voar 图buod 大卡车' v^bidNUm);; void save (); voidaea(ch(); void modify(i nt); void del( in t); void save();void search();3. 详细设计及实现Base 类(抽象类 )的实现 class Base{_L_L 1小 小 小 小 小 小 轿 轿 轿 轿 轿 轿 车 车 车 车 车 车信 信 信 信 信 信卡 卡 卡 卡 卡 卡车 车 车 车 车 车信 信 信 信 信 信1 大 大 大 1 大 大 1 大 客 客 客 轿 客 客 车 车 车 车 车 车 信 信 信 信 信 信(2) (3) (4)@B a Base 类 virtual voidreaa()=0; ^virtual voidadd()=0; virtual void vi vi 卡车类的设计chuCarNam e arch 》0; void read(); Truck char adckiDp voar m h df 卡车大客车类的设计ftididckNim;小轿车类的设 modify(int)=0;(in t)=0; 0];Bus车车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; };小轿车类的实现class 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();};void Car::read()ifstream carfile;(" 轿车信息.txt");carfile>>car[count_car].carID>>car[count_car].carName>>car[count_car].carFeeJwhile(!()){ count_car++;carfile>>car[count_car].carID>>car[count_car].carName>>car[count_car].car Fee;}();}void Car::add(){arID,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){arID,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;(" 轿车信息.txt");for(int i=0;i<=count_car-1;i++)carfile<<car[i].carID<<" "<<car[i].carName<<" "<<car[i].carFee<<endl; ();卡车类的实现class 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();};void Truck::read(){ifstream truckfile;(" 卡车信息.txt");truckfile>>truck[count_truck].truckID>>truck[count_truck].truckNa me>>truck[count_truck].truckNum;while(!()){ count_truck++;truckfile>>truck[count_truck].truckID>>truck[count_truck].truc kName>>truck[count_truck].truckNum;}();}void Truck::add(){ruckName,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){ruckID,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){coutvv"卡车车牌号"<<"卡车品牌"<<"卡车载重数(吨)"<<endl;cout<<truck[i].truckID<<" "<<truck[i].truckName<<""<<truck[i].truckNum<<endl;break;}elsecout<<" 无此卡车数据!"<<endl;break;}}void Truck::save(){ofstream truckfile;(" 卡车信息.txt");for(int i=0;i<=count_truck-1;i++)truckfile<<truck[i].truckID<<""<<truck[i].truckName<<" "<<truck[i].truckNum;();}大客车类的实现class 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();};void Bus::read(){busfile>>bus[count_bus].busID>>bus[count_bus].busName>>bus[count_bus].busNum;while(!()){count_bus++;busfile>>bus[count_bus].busID>>bus[count_bus].busName>>bus[count_bus].bus Num; }();}void Bus::add(){usID,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){usID,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){coutvv"客车车牌号"<<"客车品牌"<<"客车最大载客数(人)"<<endl; cout<<bus[i].busID<<""<<bus[i].busName<<" "<<bus[i].busNum<<endl; break;}elsecout<<" 无此客车数据!"<<endl;break;}void Bus::save() {ofstream busfile;(" 客车信息 .txt");for(int i=0;i<=count_bus-1;i++)busfile<<bus[i].busID<<" "<<bus[i].busName<<" "<<bus[i].busNum<<endl; (); }#include <> #include<> #include <> #include <> #include <>{Car car1;p=&car1;cout<<" 请输入轿车车牌号、轿车品牌、油耗费用 :"<<endl;cin>>>>>>;coutvv"是否保存轿车信息(不区分大小写)是(y/Y)否(n/N)"v<endl; cin>>c;if(c=='y'||c=='Y'){p->add();Car car[MAXcar];Trucktruck[MAXtruck]; Busbus[MAXbus]; intcount_car=0; intcount_truck=0; intcount_bus=0; Base*p=NULL; char c; 加轿车信息 "<<endl;cout<<" cout<<" cout<<" cout<<" cout<<" 2. 3. 4. 5.0. cout<<"******************************* cout<<" 请输入所要操作的编号 cin>>choice; switch(choice){ case 1:修改轿车信息 "<<endl; 删除轿车信息 "<<endl; 查询轿车信息 "<<endl; 显示所有轿车信息 "<<endl;退出"<<e ndl;<<endl;・“・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>>>>>>;coutvv"是否保存轿车信息(不区分大小写)是(y/Y)否(n/N)"v<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<<" 请选择要修改的轿车车牌号、轿车品牌、油耗费用的序列号:"<<e ndl;cin>>index;coutvv"是否保存轿车信息(不区分大小写)是(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>>;(); system("pause"); break;}case 5:{cout<<" 轿车车牌号"<<" 轿车品牌"<<" 轿车油耗费用"<<endl; for(inti=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;}加卡车信息"<<endl;cout<<" 2. 修改卡车信息"<<endl;cout<<" 3. 删除卡车信息"<<endl;cout<<" 4. 查询卡车信息"<<endl;cout<<" 5. 显示所有卡车信息"<<endl;cout<<" 0. 退出"<<e ndl;cout<<"***********************************"<<endl; cout<<" 请输入所要操作的编号:";{cin>>choice; switch(choice)case 1:{Truck truck1; p=&truck1;cout<<" 请输入卡车的车牌号、卡车品牌、载重数( 吨):"<<endl; cin>>>>>>;coutvv"是否保存卡车信息(不区分大小写)是(y/Y)否(n/N)"v<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;coutvv"请输入要修改卡车的车牌号、卡车品牌、载重数(吨):"<<e ndl;cin>>>>>>;coutvv"是否保存卡车信息(不区分大小写)是(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;ivcount_truck;i++)coutvvi+1vv"."vvtruck[i].truckIDvv" "vvtruck[i].truckNamevv" "vvtruck[i].truckNumvvendl;coutvv" 请选择要删除的卡车信息序列号:"vvendl;} case0:quit=true;break;default:coutvv" }if(quit==true)break;} system("cls"); return;}加客车信息coutvv"coutvv"coutvv"coutvv"coutvv" 请输入0~5 之间的数字!"vvendl;break;II vvendl;2.3.4.修改客车信息删除客车信息查询客车信息显示所有客车信息退出"<<e ndl;IIIIIIvvendl;vvendl;vvendl;"vvendl;cin>>index;coutvv"是否保存卡车信息(不区分大小写)是(y/Y)否(n/N)"v<endl; cin>>c;if(c='n'||c=='N'){p->del(index);p->save();}break;}case 4:{Truck truck4;cout<<" 请输入卡车的车牌号:"<<endl;cin>>;();system("pause");break;}case 5:{coutvv"卡车车牌号"<<"卡车品牌"<<"卡车载重数(吨)"<<endl; for(inti=0;i<count_truck;i++) coutvvi+1vv"."vvtruck[i].truckIDvv""vvtruck[i].truckNamevv" "vvtruck[i].truckNumvvendl;system("pause");if(count_truck==0) coutvvsetw(20)vv" 卡车信息库为空!"vvendl;break;cout<<" 请输入所要操作的编号 cin>>choice; switch(choice) {case 1:{Bus bus1; p=&bus1;cout<<" 请 输 入 要 添 加 的 客 车 的 车 牌 号 、 客 车 品 牌 、 最 大 载客 数 ( 人 ):"<<endl;cin>>>>>>;coutvv"是否保存客车信息(不区分大小写)是(y/Y)否(n/N)"v<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;coutvv"请输入要修改的客车车牌号、客车品牌、最大载客数 (人):"<<e ndl; cin>>>>>>;coutvv"是否保存客车信息(不区分大小写)是(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;coutvv"是否保存客车信息(不区分大小写)是(y/Y)否(n/N)"v<endl; cin>>c;if(c=='y'||c=='Y')cout<<"***********************************、' <<endl;{p->del(index);p->save();}break;}case 4:{Bus bus4;cout<<" 请输入客车的车牌号:"<<endl;cin>>;();system("pause");break;}case 5:{coutvv"客车车牌号"<<"客车品牌"<<"客车最大载客数(人)"<<endl; for(inti=0;i<count_bus;i++)coutvvi+1vv"."vvbus[i].busIDvv" "vvbus[i].busNamevv" "vvbus[i].busNumvvendl;system("pause");if(count_bus==0) coutvvsetw(20)vv" 客车信息库为空!"vvendl;break;}case 0:quit=true;break;default:coutvv" 请输入0~5 之间的数字!"vvendl;break;}if(quit==true)break;}system("cls");return;ead();Truck (truck); (truck).read();Bus (bus);(bus).read();int choice=1; 车信息管理 "<<endl;cout<<" 2.cout<<" 3.cout<<" 0.cout<<" 请输入所要操作的编号 cin>>choice; switch(choice){case 1:{Car car1;p=&car1;cout<<" 请输入轿车车牌号、轿车品牌、油耗费用cin>>>>>>;coutvv"是否保存轿车信息(不区分大小写)是(y/Y)cin>>c;if(c=='y'||c=='Y')p->add();卡车信息管理 "<<endl客车信息管理 "<<endl退出"<<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<<" default:cout<<" 谢谢您的使用! "<<endl; return;break;请输入 0~3 之间的数字! "<<endl;break;}system("cls");}}加轿车信息 "<<endl; cout<<" 2.cout<<" 3. cout<<" 4. cout<<" 5. cout<<" 0. 修改轿车信息 "<<endl; 删除轿车信息 "<<endl; 查询轿车信息 "<<endl; 显示所有轿车信息 "<<endl; 退出"<<endl;cout<<" .**********************************" <<endl;:"<<endl; 否 (n/N)"<<endl;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>>>>>>;coutvv"是否保存轿车信息(不区分大小写)是(y/Y)否(n/N)"v<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<<" 请选择要修改的轿车车牌号、轿车品牌、油耗费用的序列号:"<<e ndl;cin>>index;coutvv"是否保存轿车信息(不区分大小写)是(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>>;(); 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;请输入0~5之间的数字!"default:cout<<" }if(quit==true) break;}system("cls");return;}加卡车信息"<<endl;cout<<" 2. 修改卡车信息"<<endl;cout<<" 3. 删除卡车信息"<<endl;cout<<" 4. 查询卡车信息"<<endl;cout<<" 5. 显示所有卡车信息"<<endl;cout<<" 0. 退出"<<e ndl;cout<<"***********************************"<<endl; cout<<" 请输入所要操作的编号{cin>>choice; switch(choice)case 1:Truck truck1; p=&truck1;cout<<" 请输入卡车的车牌号、卡车品牌、载重数( 吨):"<<endl; cin>>>>>>; coutvv"是否保存卡车信息(不区分大小写)是(y/Y)否(n/N)"v<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;coutvv"请输入要修改卡车的车牌号、卡车品牌、载重数(吨):"<<e ndl;cin>>>>>>;coutvv"是否保存卡车信息(不区分大小写)是(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;ivcount_truck;i++)coutvvi+1vv"."vvtruck[i].truckIDvv" "vvtruck[i].truckNamevv" "vvtruck[i].truckNumvvendl;coutvv" 请选择要删除的卡车信息序列号:"vvendl; cin>>index;coutvv"是否保存卡车信息(不区分大小写)是(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>>;(); 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;请输入 0~5 之间的数字! "<<endl;break;}if(quit==true) break;} system("cls"); return; }加客车信息 "<<endl;cout<<" 2. cout<<" 3. cout<<" 4. cout<<" 5. cout<<" 0.cout<<" 请输入所要操作的编号default:cout<<"修改客车信息 "<<endl; 删除客车信息 "<<endl; 查询客车信息 "<<endl; 显示所有客车信息 "<<endl;退出"<<e ndl; cout<<" ***********************************、' <<endl;cin>>choice; switch(choice){case 1:{Bus bus1; p=&bus1;cout<<" 请输入要添加的客车的车牌号、客车品牌、最大载客数( 人):"<<endl;cin>>>>>>;coutvv"是否保存客车信息(不区分大小写)是(y/Y)否(n/N)"v<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;coutvv"请输入要修改的客车车牌号、客车品牌、最大载客数(人):"<<e ndl;cin>>>>>>;coutvv"是否保存客车信息(不区分大小写)是(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;coutvv"是否保存客车信息(不区分大小写)是(y/Y)否(n/N)"v<endl;cin>>c; if(c=='y'||c=='Y'){p->del(index);p->save();}break;}case 4:{Bus bus4;cout<<" 请输入客车的车牌号:"<<endl;cin>>;();system("pause");break;}case 5:{coutvv"客车车牌号"<<"客车品牌"<<"客车最大载客数(人)"<<endl; for(inti=0;i<count_bus;i++)coutvvi+1vv"."vvbus[i].busIDvv" "vvbus[i].busNamevv" "vvbus[i].busNumvvendl;system("pause"); if(count_bus==0)coutvvsetw(20)vv" 客车信息库为空!"vvendl; break;}case 0:quit=true;break;default:coutvv" 请输入0~5 之间的数字!"vvendl;break;}if(quit==true)break;}system("cls");return;}车信息管理"vvendl;coutvv" 2. 卡车信息管理"vvendl;cout<<" 3. 客车信息管理"<<endl;cout<<" 0. 退出"<<endl;3.0.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");}4.系统调试在调试过程中,出现了下面一些错误:具体调试过程:(1)显示主菜单(1)(1)(1)(1)(1)重复以上操作分别输入红旗、大众、三菱和现代)(1)(1)(2)(1)(1)(2)(3)(1)(1)(3)(1)(1)(4)(1)(1)(5)(1)(1)(0)以上只演示了三个车辆类小轿车、卡车、大客车中的小轿车。