停车场管理的模拟系统
停车场模拟管理系统实验报告

停车场模拟管理系统实验报告实验报告:停车场模拟管理系统一、引言停车场是现代城市交通管理中不可或缺的一部分,如何高效地管理停车场成为城市交通规划和管理的重要课题之一、为了更好地理解停车场系统的运作原理,并学习相关管理策略,我们设计了停车场模拟管理系统实验。
二、实验目的1.了解停车场系统的工作流程与每个角色的职责;2.掌握停车场管理系统的设计与实现方法;3.学习利用计算机模拟系统来辅助管理停车场。
三、实验方法与步骤1.系统需求分析:明确系统主要功能,确定系统用户和使用场景,梳理系统流程;2.系统设计:根据需求分析,设计系统的功能模块、数据库表结构、界面设计等;3.系统实现:使用编程语言开发系统,编写相应的代码实现各个功能模块;4.系统测试与优化:测试系统的各项功能是否正常工作,进行反复测试并修复潜在的问题;5.系统上线与使用:将系统部署到服务器上,供用户正式使用。
四、实验结果与分析我们设计的停车场模拟管理系统主要包括以下功能:1.车辆进入停车场:当车辆驶入停车场时,系统记录车辆信息,并分配一个唯一的停车位;2.车辆离开停车场:车辆离开停车场时,系统根据停车时间计算停车费用,并更新车辆的状态信息;3.车位管理:系统可以查看当前停车场车位的使用情况,根据需要修改停车位的状态;4.停车记录查询:系统可以查询指定车辆的停车记录,包括进入停车场的时间、离开停车场的时间以及停车费用;5.收费管理:系统可以提供不同计费规则的选择,并根据规则计算车辆的停车费用;6.用户管理:系统可以管理停车场的员工和管理员账号,设置不同的权限和角色。
通过对实际停车场运营流程的模拟,我们可以观察到以下结果:1.系统能够准确记录每辆车进入和离开停车场的时间,方便车主查询;2.停车场车位使用情况能够实时更新,帮助管理员有效管理停车资源;3.不同计费规则可以灵活设置,可以根据不同需求调整停车费用;4.员工和管理员账号权限分离,保证了系统的安全性和管理的有序性。
数据结构停车场课程设计

数据结构停车场课程设计一、课程目标知识目标:1. 理解数据结构中图和树的概念,掌握它们在解决实际问题中的应用。
2. 学习并掌握停车场系统的逻辑结构,能运用所学数据结构设计停车场的模拟系统。
3. 了解不同数据结构在处理停车场问题时的效率差异,能够分析其时间复杂度和空间复杂度。
技能目标:4. 能够运用所学知识,设计并实现一个简单停车场的管理系统,包括车辆入场、出场、查找空车位等基本功能。
5. 通过课程设计活动,提升学生利用数据结构解决实际问题的编程能力,加强代码的逻辑性和可读性。
6. 培养学生将理论知识应用于实际问题的能力,通过团队协作完成课程设计任务。
情感态度价值观目标:7. 激发学生对计算机科学和数据结构的兴趣,增强其对复杂问题探究的积极态度。
8. 培养学生的团队协作精神,学会在团队中分工合作、共同解决问题。
9. 增强学生的创新意识,鼓励学生大胆尝试不同的解决方案,体会科技创新对现实生活的影响。
课程性质分析:本课程设计属于高中信息技术或计算机科学课程,以实践性和应用性为主,旨在通过实际问题的解决,加深学生对数据结构知识的理解和运用。
学生特点分析:高中生具有一定的数据结构基础和编程能力,思维活跃,对实际问题具有较强的探究欲望,但需要进一步引导他们将理论知识与实际问题相结合。
教学要求:教师应引导学生将所学知识综合运用到停车场系统设计中,注重理论与实践相结合,鼓励学生创新思维和团队合作,通过具体的学习成果来衡量学生掌握情况。
二、教学内容1. 数据结构基本概念复习:回顾图和树的基本概念,包括相关术语、性质及常用算法。
教材章节:第五章“图”,第六章“树”2. 停车场系统需求分析:介绍停车场系统的基本功能,如车辆入场、出场、查找空车位等。
教材章节:项目实战部分3. 数据结构选择与应用:探讨不同数据结构在停车场系统中的应用,如邻接表、邻接矩阵、二叉树等。
教材章节:第五章、第六章应用实例4. 停车场系统设计:详细讲解如何利用数据结构设计停车场系统,包括数据模型、算法实现等。
停车场运营管理平台系统

停车场运营管理平台系统1. 简介停车场运营管理平台系统是一种集中管理和监督停车场运营的软件系统。
它提供了一套完整的功能模块,包括停车记录管理、收费管理、车辆管理、设备管理等。
通过该系统,停车场管理人员可以方便地进行日常管理和运营监控,提高停车场的利用率和运营效率。
2. 功能模块2.1 停车记录管理停车记录管理模块用于记录和管理车辆的进入和离开停车场的时间。
当车辆进入停车场时,系统会自动记录车辆的进入时间,并在车辆离开时记录离开时间。
停车记录还包括车辆的车牌号、停车位号等信息。
该模块可以提供查询和统计功能,方便对停车记录进行管理和分析。
2.2 收费管理收费管理模块用于管理停车场的收费标准和收费情况。
系统可以根据停车时间和停车位号自动计算停车费用,并生成收据。
收费管理模块还提供了收费统计和报表功能,方便管理人员了解停车场的收入情况。
2.3 车辆管理车辆管理模块用于管理停车场内的车辆信息。
包括车辆的车牌号、车主姓名、车辆品牌等。
管理人员可以通过该模块查询和编辑车辆信息,方便对停车场内车辆的管理。
2.4 设备管理设备管理模块用于管理停车场内的设备,包括停车场闸口、摄像头等设备。
系统可以实时监控设备的工作状态,并提供设备故障报警功能。
管理人员可以通过该模块进行设备的维护和故障处理。
2.5 用户管理用户管理模块用于管理停车场系统的用户权限。
系统可以根据用户角色对功能模块进行权限控制,确保只有授权人员能够进行相应的操作。
3. 系统优势3.1 实时监控停车场运营管理平台系统可以实时监控停车场的运营情况,包括车辆进出时间、停车位使用情况、设备工作状态等。
管理人员可以通过系统进行快速响应和处理,及时解决停车场运营中的问题。
3.2 数据管理和分析该系统提供了丰富的数据管理和分析功能,可以对停车记录、收费情况等数据进行统计和分析。
管理人员可以根据这些数据进行决策和优化停车场运营策略。
3.3 操作便捷停车场运营管理平台系统的操作界面简洁明了,功能模块清晰分类。
基于PLC控制的停车场车位系统设计

基于PLC控制的停车场车位系统设计第一章绪论1.1停车场的种类伴随着社会不断的进步与发展,人们日常的停车方式有了较大的变化,经历了一系列的变革。
按照停车位置的不同,可以将当前社会上的各个停车场进行具体的分类,主要有地上、地面、专用以及路边短暂停车等四种不同的类别,可以根据楼盘所处的位置,再将停车场进行更为具体的分类,有综合大楼专用车库与办公室用地专用地面车库,住宅区专用车库、运营专用车库以及大型城市公共建筑物停车场等。
1.2车库管理模式的发展车库管理模式展现出由人力掌控向智能控制的大趋势,传统意义的管理手段是纯手动操作方式,车辆的进出和泊车均为人力操作,收费也为人力操作,自动化程度较低。
现在,随着时间的推移人类文明的蓬勃发展,步入互联网年代,建筑得到了进一步的发展,步入智慧化建成年代,伴随着各项技术不断深入的发展与进步,尤其是半导体芯片的应用范围进一步的扩大,使整个智能停车的管理建设、信息化建设、自动化和智能化管理技术,费用逐渐减少,使安全基本要求不断提升。
所以,手动掌控车队已难以去适应这个时代的要求,需对停车场采取全自动、智能化管理和掌控。
具体措施包含车辆出入指引、自动泊车服务收费、智能车辆出入和移动控制系统、自动识别车辆出入和历史记录。
一些独特的停车塔(建筑物)处于更智能的水平。
车辆进入停车场,只需领到卡并在指定地点位置等待,自动传送装置自动完成传送、升降、着陆、计时及出仓过程。
整个车库设备智能化程度高,停车验收过程自动化程度高,停车空间再利用更高效。
与此同时,该类型的车辆停放需相关专业的施工规划建设,因而也需更高的停车场系统专业化程度。
1.3可编程控制器简介及发展趋势1.3.1PLC的起源与自动化工业控制相关的领域包括PLC、工业计算机和嵌入式控制。
PLC 自1968年成立以来,以惊人的速度成为相关领域的领导者,确保了各种自动控制手段的可靠应用。
主要是因为它能为自动控制应用场景提供更多安全的以及合理的实施方案,与工业园区当中的需求有着较高的匹配程度。
停车场管理系统—C语言课程设计

停车场管理系统1题目要求设有一个可以停放n辆汽车的狭长停车场,它只有一个大门可以供车辆进出。
车辆按到达停车场时间的早晚依次从停车场最里面向大门口处停放(最先到达的第一辆车放在停车场的最里面)。
如果停车场已放满n辆车,则后来的车辆只能在停车场大门外的便道上等待,一旦停车场内有车开走,则排在便道上的第一辆车就进入停车站。
停车站内如有某辆车要开走,在它之后进入停车场的车都必须先退出停车站为它让路,待其开出停车场后,这些车辆再依原来的次序进场。
每辆车在离开停车场时,都应根据它在停车场内停留的时间长短交费。
如果停留在便道上的车未进停车场就要离去,允许其离去,不收停车费,并且仍然保持在便道上等待的车辆的次序。
编制一程序模拟该停车场的管理。
【基本要求】要求程序输出每辆车到达后的停车位置(停车场或便道上),以及某辆车离开停车场是的停车时间及它应该交的费用。
2需求分析根据题目要求,因为停车场是一个单条的序列,可以用结构体实现;在程序中,需要知道每辆来车的具体停放位置,应提供提示、查找、标记工作。
车辆离开要计时计费。
另外,每天开始时,停车场要初始化。
3总体设计这个系统可以分为:初始化、有车进入、有车离开、退出四个模块。
4详细设计main()函数体内包含了界面选则部分menu(),并单独Array抽出来作为一个独立函数,目的在于系统执行每部分模块后能够方便返回到系统界面。
即main()函数写为如下:void main()/*主函数*/{menu();/*菜单函数*/}菜单函数:void menu(){int n,w;do{puts("\t\t**************MENU**************\n\n");puts("\t\t\t 1.初始化");puts("\t\t\t 2.有车进入");puts("\t\t\t 3.有车离开");puts("\t\t\t 4.退出");puts("\n\n\t\t*********************************\n");printf("Please choice your number(1-4): [ ]\b\b");scanf("%d",&n);if(n<1||n>4)/*对选择的数字作判断*/{w=1;getchar();}else w=0;}while(w==1);switch(n){case 1:chushi();break;/*初始化函数*/case 2:jinru();break;/*车辆进入函数*/case 3:likai();break;/*车辆离开函数*/case 4:exit(0);/*退出*/}}初始化模块设计:【需求分析】该模块是将每一天开始的停车场内和便道车位清零。
停车场车辆出入智能管理系统

停车场车辆出入智能管理系统1. 简介停车场车辆出入智能管理系统是一种基于现代科技的智能停车场管理解决方案。
它利用先进的技术手段,如车牌识别、自动扣费等,实现了车辆进出停车场的自动化管理。
本文将介绍该系统的功能及其优点。
2. 系统功能2.1 车辆进入管理该系统能够通过车牌识别技术识别进入停车场的车辆,并将相关信息(如车牌号、进入时间等)自动记录在系统数据库中。
同时,该系统还能自动抬杆放行,提高车辆进场效率。
2.2 车辆出场管理在车辆离开停车场时,系统能够通过车牌识别技术自动识别车辆,并自动计算车辆停留时间及应缴费用。
车主只需通过系统提供的自助缴费设备完成支付,系统将自动抬杆放行。
2.3 车辆数据统计与分析该系统还提供了车辆进出记录的统计与分析功能。
管理员可以通过系统界面查看车辆进出记录、停留时间统计等数据,方便运营管理。
2.4 停车位管理该系统能够实时监测停车位的使用情况,并在系统界面中展示给管理员。
当停车位已满时,系统能够进行实时告警,提醒管理人员采取相应措施。
2.5 系统设置与维护管理员可以通过系统界面进行系统的设置和维护工作,如添加、删除用户的权限管理、添加设备、调整识别准确度等。
系统还提供了远程监控与维护功能,管理员可远程登录系统进行操作和故障排除。
3. 系统优点3.1 提高停车效率系统通过车牌识别与自动抬杆放行技术,能够实现车辆进出停车场的自动化管理,提高了停车效率,减少了人工操作的时间,缩短了排队等候时间。
3.2 提升用户体验用户无需停车时手动取票和缴费,通过车牌识别等技术,系统能够自动完成识别、计费和放行等操作,大大提升了用户的停车体验。
3.3 降低管理成本系统能够实时监测车辆进出记录、停车位使用情况等,提供了数据分析与统计功能,管理员可以进行更精准的车位管理,减少了人工巡查与管理的成本。
3.4 提高安全性通过车牌识别技术,系统能够实现对停车场进出车辆的准确监控。
只有车牌已录入系统或正常缴费的车辆才能进入和离开停车场,提高了停车场的安全性。
停车场模拟管理系统实验报告

一.问题描述1。
实验题目:设停车场是一个可停放n 辆汽车的狭长通道,且只有一个大门可供汽车进出。
汽车在停车场内按车辆到达时间的先后顺序,依次由北向南排列(大门在最南端,最先到达的第一辆车停放在车场的最北端)。
若停车场内已经停满n辆车,那么后来的车只能在门外的便道上等候。
一旦有车开走,则排在便道上的第一辆车即可开入。
当停车场内某辆车要离开时,在它之后进入的车辆必须先退出车场为它让路,待该辆车开出大门外,其他车辆再按原次序进入车场.每辆停放在车场的车在它离开停车场时必须按它停留的时间长短缴纳费用。
试为停车场编制按上述要求进行管理的模拟程序。
要求:根据各结点的信息,调用相应的函数或者语句,将结点入栈入队,出栈或者出队。
二.需求分析1.程序所能达到的基本可能:程序以栈模拟停车场,以队列模拟车场外的便道,按照从终端读入数据的序列进行模拟管理。
栈以顺序结构实现,队列以链表结构实现。
同时另设一个栈,临时停放为给要离去的汽车让路而从停车场退出来的汽车。
输入数据按到达或离去的时刻有序。
当输入数据包括数据项为汽车的“到达”(‘A’表示)信息,汽车标识(牌照号)以及到达时刻时,应输出汽车在停车场内或者便道上的停车位置;当输入数据包括数据项为汽车的“离去”(‘D’表示)信息,汽车标识(牌照号)以及离去时刻时,应输出汽车在停车场停留的时间和应缴纳的费用(便道上停留的时间不收费);当输入数据项为(‘P’,0,0)时,应输出停车场的车数;当输入数据项为(‘W’, 0, 0)时,应输出候车场车数;当输入数据项为(‘E’,0, 0),退出程序;若输入数据项不是以上所述,就输出"ERROR!"。
2.输入输出形式及输入值范围:程序运行后进入循环,显示提示信息:“Please input the state,number and time of the car:",提示用户输入车辆信息(“到达"或者“离开”,车牌编号,到达或者离开的时间)。
PLC课程设计停车场车位控制解析

交互方式:通过 无线网络或蓝牙 等方式进行信息 传输
05
PLC程序设计和实现
PLC编程语言和开发环境介绍
PLC编程语言: 梯形图、功能块 图、指令表等
PLC开发环境: 编程软件、仿真 软件、调试工具 等
PLC程序设计: 根据控制要求编 写程序,实现控 制功能
PLC程序实现: 将编写好的程序 下载到PLC中, 实现控制功能
控制方式:定时控制、计 数控制、逻辑控制等
控制目标:实现车位的有 效管理和分配,提高停车 场的使用效率
停车位显示屏和预订系统的信息交互
停车位显示屏: 显示当前车位状 态,如空闲、已 占用等
预订系统:用户 通过手机APP或 网站进行车位预 订
信息交互:停车 位显示屏与预订 系统进行实时信 息交互,更新车 位状态
车辆检测器的信号接入
信号类型:通常为开关量信 号或模拟量信号
信号处理:通过PLC进行信 号处理和逻辑判断
车辆检测器:用于检测车位 是否被占用
信号输出:输出控制信号, 控制车位指示灯或闸门等设
备
停车位控制器的控制逻辑
输入信号:车辆检测器、 车位占用传感器等
输出信号:指示灯、语音 提示等
控制逻辑:根据输入信号 判断车位占用情况,输出 相应的指示信号
测试方法:使用模 拟器进行模拟测试, 验证程序的正确性 和稳定性
测试内容:包括输 入输出信号、逻辑 运算、定时器、计 数器等
测试结果:记录测 试过程中的问题, 并进行分析和解决
PLC程序的优化和改进
优化PLC程序结构,提高程序运行效率 优化PLC程序逻辑,减少程序错误和故障 优化PLC程序代码,提高程序可读性和可维护性 优化PLC程序功能,增加程序灵活性和扩展性
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
广东海洋大学信息学院课程设计报告设计题目停车场管理的模拟系统课程名称数据结构姓名(学号)联系电话专业名称计算机科学与技术所在班级计科1112指导教师谢仕义教师职称教授起止时间2011 年12月26日至2012年1月6日评定成绩一、课程设计的主要内容熟悉理解栈和队列的逻辑结构和存储结构,设计实现停车场管理的模拟系统,其主要内容如下:设停车场是一个可以停放n辆汽车的狭长通道,且只有一个大门可供汽车进出,其模型如下图1所示。
汽车在停车场内按车辆到达时间的先后顺序,依次由北向南排列(大门在最南端,最先到达的第一辆汽车停放在车场的最北端),若车场内已停满n辆车,那么后来的汽车只能在门外的便道上等候,一旦有车开走,则排在便道上的第一辆车即可开入;当停车场内某辆汽车要离开时,在它之后进入的车辆必须先退出停车场按顺序开入临时停放道为其让路,待其开出大门外后,再按原次序进入车场,每辆停放在停车场的汽车在它离开停车场时必须按其停留的时间长短缴纳费用(从进入停车场开始计费)。
二、功能和结构设计I.主界面为实现各项功能,首先设计一个汉多个功能的主控菜单子程序,已连接系统各项功能,方便用户使用。
系统主控菜单界面如下:II ,系统的主要要求:1.以栈模拟停车场,以队列模拟停车场外的便道,同时用另一个栈模拟为离去车辆让路而从停车场退出来的车辆的临时停放道。
2.每一组输入数据包括三个数据项:车辆“到达”或“离去”信息、车辆牌照号码、车辆到达或离去的时刻。
3对每一组输入数据进行操作后的输出信息为:每当有车辆到达或离去时,动态输出停车场内、便道上以及临时停放道的车辆排队情况,若是车辆离去,还应输出汽车在停车场内停留的时间和应缴纳的费用(在便道上停车不收费)。
III.记录到达车辆:长度n大门便道停车场临时停放道 (临时停放为给要离去的汽车让路而从停车场退出来的车辆)IV.程序原定车位5个,当停车场车位已满时,到达车辆进入便道等候,当停车场有车离开时,在便道上的车自动进入停车场,并且以此时的时间来计算从便道进入停车场的车时间,离开的车要按停放的时间收取费用:V.查询功能,可以选择查询停车场里的停放的车,或者是查询便道上等候的车辆:三、流程图和算法设计I.Judge_Output算法流程图II.A_cars算法流程图III.D_cars流程图四、源程序代码#include<iostream.h>#include<stdio.h>#include<stdlib.h>#define MAX 5 //车库容量#define price 0.01 //每分钟费用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;}SeqStackCar;//模拟车站typedef struct car{CarNode *data;struct car *next;}QueueNode;typedef struct Node{QueueNode *head;QueueNode *rear;}LinkQueueCar;//模拟通道void InitStack(SeqStackCar *);//初始化栈int InitQueue(LinkQueueCar *);//初始化便道int Arrival(SeqStackCar *,LinkQueueCar *);//车辆到达void Leave(SeqStackCar *,SeqStackCar *,LinkQueueCar *);//车辆离开void List(SeqStackCar,LinkQueueCar);//显示存车信息void main(){system("color 00f");SeqStackCar Enter,Temp;LinkQueueCar Wait;int ch;InitStack(&Enter);//初始化车站InitStack(&Temp);//初始化让路的临时栈InitQueue(&Wait);//初始化便道while(1){cout<<"欢迎光临"<<endl;cout<<"*************************"<<endl;cout<<"1.车辆到达"<<endl;cout<<"2.车辆离开"<<endl;cout<<"3.列表显示"<<endl;cout<<"4.退出系统"<<endl;cout<<"*************************"<<endl;cout<<"请选择所需要的服务!"<<endl;cout<<"请注意正确输入时间,不要为非数字!"<<endl;while(1){cin>>ch;if(ch>=1&&ch<=4)break;elsecout<<"请选择:1 | 2 | 3 | 4."<<endl;}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;}}}void InitStack(SeqStackCar *s)//初始化栈{int i;s->top=0;for(i=0;i<MAX;i++)s->stack[s->top]=NULL;}int InitQueue(LinkQueueCar *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;cout<<"请输入离开的时间:/**:**/"<<endl;cin>>p->leave.hour;while(p->leave.hour<p->reach.hour||p->leave.hour>23){cout<<"error!"<<endl;cout<<"请输入离开的时间的时("<<p->reach.hour<<"-23)"<<endl; cin>>p->leave.hour;B1=p->leave.hour;}cout<<" : "<<endl;cin>>p->leave.min;cout<<endl<<"离开车辆的车牌号是:"<<endl;puts(p->num);cout<<"其到达时间为:"<<p->reach.hour<<" : "<<p->reach.min<<endl; cout<<"离开时间为:"<<p->leave.hour<<" :"<<p->leave.min<<endl;A1=p->reach.hour;A2=p->reach.min;B1=p->leave.hour;B2=p->leave.min;cout<<"应交费用为:"<<((B1-A1)*60+(B2-A2))*price<<"元!"<<endl; free(p);}int Arrival(SeqStackCar *Enter,LinkQueueCar *W)//车辆到达{CarNode *p;QueueNode *t;p=(CarNode *)malloc(sizeof(CarNode));flushall();cout<<"请输入车牌号(例:A1234):"<<endl;gets(p->num);if(Enter->top <MAX)//车辆未满,车进车场{Enter->top++;cout<<"车辆在车场第"<<Enter->top<<"位置!"<<endl;cout<<"请输入到达时间的时:/**:**/"<<endl;cin>>p->reach.hour;while(p->reach.hour<0 || p->reach.hour>23){cout<<"error!"<<endl;cout<<"请输入到达时间的时(0-23)!"<<endl;cin>>p->reach.hour;}cout<<"到达时间的分: "<<endl;cin>>p->reach.min;while(p->reach.min<0 || p->reach.min>59){cout<<"error!"<<endl;cout<<"请输入到达时间的分(0-59)!"<<endl;cin>>p->reach.min;}Enter->stack[Enter->top]=p;return (1);}else//车辆已满,车进入便道{cout<<"该车在便道等待!"<<endl;t=(QueueNode *)malloc(sizeof(QueueNode));t->data=p;t->next=NULL;W->rear->next=t;W->rear=t;return (1);}}void Leave(SeqStackCar *Enter,SeqStackCar *Temp,LinkQueueCar *W)//车辆离开{int room;CarNode *p,*t;QueueNode *q;//判断车场内是否有车if(Enter->top>0)//有车{while(1)//输入离开车辆的信息{cout<<"请输入车在车场的位置1--"<<Enter->top<<" : ";cin>>room;if(room>=1 && room<=Enter->top) break;}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++;cout<<"便道的"<<t->num<<"号车进入车场第"<<Enter->top<<"位置!"<<endl; cout<<"请输入现在的时间如/* : */"<<endl;if(p->reach.hour<0 || p->reach.hour>23){cout<<"error!"<<endl;cout<<"请输入到达时间的时(0-23)!"<<endl;cin>>p->reach.hour;}cout<<" : "<<endl;cin>>p->reach.min;if(p->reach.min<0 || p->reach.min>59){cout<<"error!"<<endl;cout<<"请输入到达时间的分(0-59)!"<<endl;cin>>p->reach.min;}W->head->next=q->next;if(q==W->rear) W->rear=W->head;Enter->stack[Enter->top]=t;free(q);}elsecout<<"便道里没有车!"<<endl;}elsecout<<"车场里没有车!"<<endl; //没车}void List1(SeqStackCar *S) //列表显示车场信息{int i;if(S->top>0) //判断车场内是否有车{cout<<"车场:"<<endl;cout<<" 位置到达时间车牌号"<<endl;for(i=1;i<=S->top;i++){cout<<" "<<i<<" "<<S->stack[i]->reach.hour<<" : "<<S->stack[i]->reach.min<<" "<<S->stack[i]->num<<endl;}}elsecout<<"车场里没有车!"<<endl;}void List2(LinkQueueCar *W) //列表显示便道信息{QueueNode *p;p=W->head->next;if(W->head!=W->rear) //判断通道上是否有车{cout<<"等待车辆的号码为:"<<endl;while(p!=NULL){puts(p->data->num);p=p->next;}}elsecout<<"便道里没有车!";}void List(SeqStackCar S,LinkQueueCar W){int flag,tag;flag=1;while(flag){cout<<"请选择1 | 2 | 3 :"<<endl;cout<<"1.车场"<<"2.便道"<<"3.返回"<<endl;while(1){cin>>tag;if(tag>=1 || tag<=3) break;elsecout<<"请选择1 | 2 | 3 : "<<endl;}switch(tag){case 1:List1(&S); break; //列表显示车场信息case 2:List2(&W); break; //列表显示便道信息case 3:flag=0; break;default:break;}}}五、课程设计总结通过这次C++课程设计,我认识到课本上学到的远远不够。