今天给各位分享停车场管理设计的知识,其中也会对停车场管理项目设计进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
停车场管理问题数据结构课程设计
贡献用户名:【空痕】 ,现在由道尔智控小编为你解答与【停车场管理设计】的相关内容!
优质回答2.3 停车场管理
2.3.1 项目简介
设停车场是一个可以停放n辆汽车的南北方向的狭长通道,且只有一个大门可供汽车进出。汽车在停车场内按车辆到达时间的先后顺序,依次由北向南排列(大门在最南端,最先到达的第一辆车停放在车场的最北端),若车场内已停满n辆车,那么后来的车只能在门外的便道上等候,一旦有车开走,则排在便道上的第一辆车即可开入;当停车场内某辆车要离开时,在它之后进入的车辆必须先退出车场为它让路,待该辆车开出大门外,其它车辆再按原次序进入车场,每辆停放在车场的车在它离开停车场时必须按它停留的时间长短交纳费用。试为停车场编制按上述要求进行管理的模拟程序。要求程序输出每辆车到达后的停车位置(停车场或便道上),以及某辆车离开停车场时应缴纳的费用和它在停车场内停留的时间。
2.3.2 设计思路
停车场的管理流程如下:
①当车辆要进入停车场时,检查停车场是否已满,如果未满则车辆进入停车场;如果停车场已满,则车辆进入便道等候。
②当车辆要求出栈时,先让在它之后进入停车场的车辆退出停车场为它让路,再让该车退出停车场,让路的所有车辆再按其原来进入停车场的次序进入停车场。之后,再检查在便道上是否有车等候,有车则让最先等待的那辆车进入停车场。
2.3.3 数据结构
由于停车场只有一个大门,当停车场内某辆车要离开时,在它之后进入的车辆必须先退出车场为它让路,先进停车场的后退出,后进车场的先退出,符合栈的“后进先出,先进后出”的操作特点,因此,可以用一个栈来模拟停车场。而当停车场满后,继续来到的其它车辆只能停在便道上,根据便道停车的特点,先排队的车辆先离开便道进入停车场,符合队列的“先进先出,后进后出”的操作特点,因此,可以用一个队列来模拟便道。排在停车场中间的车辆可以提出离开停车场,并且停车场内在要离开的车辆之后到达的车辆都必须先离开停车场为它让路,然后这些车辆依原来到达停车场的次序进入停车场,因此在前面已设的一个栈和一个队列的基础上,还需要有一个地方保存为了让路离开停车场的车辆,由于先退出停车场的后进入停车场,所以很显然保存让路车辆的场地也应该用一个栈来模拟。因此,本题求解过程中需用到两个栈和一个队列。栈以顺序结构实现,队列以链表结构实现。
2.3.4 程序清单
程序提示:以栈模拟停车场,以队列模拟车场外的便道,按照从终端读入的输入数据序列进行模拟管理。每一组输入数据包括三个数据项:汽车“到达”或“离去”信息、汽车牌照号码以及到达或离去的时刻。对每一组输入数据进行操作后的输出信息为:若是车辆到达,则输出汽车在停车场内或便道上的停车位置;若是车辆离去,则输出汽车在停车场内停留的时间和应交纳的费用(在便道上停留的时间不收费)。
#include<stdio.h>
#include <stdlib.h>
#include<iostream.h>
#include<string.h>
#include<math.h>
#define size 1 //停车场位置数
//模拟停车场的堆栈的性质;
typedef struct zanlind{
int number; //汽车车号
int ar_time; //汽车到达时间
}zanInode;
typedef struct{
zanInode *base; //停车场的堆栈底
zanInode *top; //停车场的堆栈顶
int stacksize_curren;
}stackhead;
//堆栈的基本操作;
void initstack(stackhead &L) //构造一个空栈
{
L.base=(zanInode*)malloc(size*sizeof(zanlind));
if(!L.base) exit(0);
L.top=L.base;
L.stacksize_curren=0;
}
void push(stackhead &L,zanInode e) //把元素e压入s栈
{
*L.top++=e;
L.stacksize_curren++;
}
void pop(stackhead &L,zanInode &e) //把元素e弹出s栈
{
if(L.top==L.base)
{
cout<<"停车场为空 ";
return;
}
e=*--L.top;
L.stacksize_curren--;
}
//模拟便道的队列的性质;
typedef struct duilie{
int number; //汽车车号
int ar_time; //汽车到达时间
struct duilie *next;
}*queueptr;
typedef struct{
queueptr front; //便道的队列的对头
queueptr rear; //便道的队列的队尾
int length;
}linkqueue;
//队列的基本操作;
void initqueue(linkqueue &q) //构造一个空队列
{
q.front=q.rear=(queueptr)malloc(sizeof(duilie));
if(!q.front||!q.rear)
exit(0);
q.front->next=NULL;
q.length=0;
}
void enqueue(linkqueue &q,int number,int ar_time) //把元素的插入队列(属性为number,ar_time)
{
queueptr p;
p=(queueptr)malloc(sizeof(duilie));
if(!p) exit(0);
p->number=number;
p->ar_time=ar_time;
p->next=NULL;
q.rear->next=p;
q.rear=p;
q.length++;
}
void popqueue(linkqueue &q,queueptr &w) //把元素的插入队列(属性为number,ar_time)
{
queueptr p;
if(q.front==q.rear)
{
cout<<"停车场的通道为空 ! !"<<endl;
return;
}
p=q.front->next;
w=p;
q.front->next=p->next;
q.length--;
if(q.rear==p) q.front=q.rear;
}
void jinru(stackhead &st,linkqueue &q) //对进入停车场的汽车的处理;
{
int number,time_a;
cout<<"车牌为:";
cin>>number;
cout<<"进场的时刻:";
cin>>time_a;
if(st.stacksize_curren<2)
{
zanInode e;
e.number=number;
e.ar_time=time_a;
push(st,e);
cout<< " 该车已进入停车场在: "<<st.stacksize_curren<<" 号车道"<<endl<<endl;
}
else
{
enqueue(q,number,time_a);
cout<<"停车场已满,该车先停在便道的第"<<q.length<<"个位置上"<<endl;
}
}
void likai(stackhead &st,stackhead &sl,linkqueue &q) //对离开的汽车的处理;
{ //st堆栈为停车场,sl堆栈为倒车场
int number,time_d,flag=1,money,arrivaltime; //q为便道队列
cout<<"车牌为:";
cin>>number;
cout<<"出场的时刻:";
cin>>time_d;
zanInode e,q_to_s;
queueptr w;
while(flag) //找到要开出的车,并弹出停车场栈
{
pop(st,e);
push(sl,e);
if(e.number==number)
{
flag=0;
money=(time_d-e.ar_time)*2;
arrivaltime=e.ar_time;
}
}
pop(sl,e); //把临时堆栈的第一辆车(要离开的)去掉;
while(sl.stacksize_curren) //把倒车场的车倒回停车场
{
pop(sl,e);
push(st,e);
}
if(st.stacksize_curren<2&&q.length!=0) //停车场有空位,便道上的车开进入停车场
{
popqueue(q,w);
q_to_s.ar_time=time_d;
q_to_s.number=w->number;
push(st,q_to_s);
cout<<"车牌为"<<q_to_s.number<<"的车已从通道进入停车场,所在的停车位为:"<<st.stacksize_curren<<endl<<endl;
}
cout<<"\n 收 据"<<endl;
cout<<" ====================== 车牌号: "<<number<<endl;
cout<<"==================================================="<<endl;
cout<<"|进车场时刻 | 出车场时刻 | 停留时间 | 应付(元)|"<<endl;
cout<<"===================================================="<<endl;
cout<<"| "<<arrivaltime<<" | "<<time_d<<" | "<<time_d-arrivaltime<<" | "<<money<<" |"<<endl;
cout<<"-----------------------------------------------------"<<endl<<endl;
}
void main()
{
int m=100;
char flag; //进入或离开的标识;
stackhead sting,slinshi; //停车场和临时倒车场堆栈的定义;
linkqueue line; //队列的定义;
initstack(sting); //构造停车场堆栈sting
initstack(slinshi); //构造倒车场堆栈slinshi
initqueue(line); //构造便道队列line
while(m)
{
cout<<"\n ** 停车场管理程序 **"<<endl;
cout<<"==================================================="<<endl;
cout<<"** **"<<endl;
cout<<"** A --- 汽车 进 车场 D --- 汽车 出 车场 **"<<endl;
cout<<"** **"<<endl;
cout<<"** E --- 退出 程序 **"<<endl;
cout<<"==================================================="<<endl;
cout<<" 请选择 :(A,D,E): ";
cin>>flag;
switch(flag)
{
case 'A': jinru(sting,line);break; //汽车进车场
case 'D': likai(sting,slinshi,line);break; //汽车出车场
case 'E': exit(0);
}
m--;
}
}
2.3.5 运行结果
上文就是道尔智控小编分享贡献者:(空痕)贡献的关于“停车场管理问题数据结构课程设计”的问题了,不知是否已经解决你的问题?如果没有,下一篇内容可能是你想要的答案,现在接着继续讲述下文用户【利刃者】解答的“苏州市机动车停车场管理办法”的一些相关疑问做出分析与解答,如果能找到你的答案,可以关注本站。

苏州市机动车停车场管理办法
贡献用户名:【利刃者】 ,现在由道尔智控小编为你分析与【停车场管理设计】的相关内容!
优质回答第一章总则第一条为加强机动车停车场的建设和管理,保障城市道路交通安全、畅通,根据有关法律、法规的规定,结合本市实际,制定本办法。第二条本办法适用于本市行政区域内机动车停车场的规划、建设和管理。第三条本办法所称机动车停车场(以下简称停车场)是指供机动车停放的露天或者室内场所,包括公共停车场、专用停车场和道路临时停车场。
公共停车场是指根据规划建设的以及公共建筑配套建设的经营性机动车停放场所。
专用停车场是指供本单位、本居住区机动车停放的场所。
道路临时停车场是指公安交通管理部门依法在城市道路上施划的机动车停车泊位。第四条公安交通管理部门是停车场管理的行政主管部门,负责停车场的有关行政管理工作。
城市规划行政主管部门负责停车场建设的规划管理工作;发展改革行政主管部门负责停车场建设的项目管理工作;建设行政主管部门负责停车场建设管理工作。
城市管理行政主管部门负责道路临时停车场养护、维修管理和道路临时停车场特许经营管理工作。
其他有关行政主管部门按照各自职责,负责停车场的相关管理工作。第二章停车场规划与建设第五条市公安交通管理部门应当根据本市国民经济与社会发展规划、城市总体规划、土地利用总体规划和交通需求状况,本着节约和集约利用土地、加强与交通体系相协调的原则,组织编制公共停车场专业规划,经市城市规划行政主管部门综合协调报市人民政府批准后实施。
公共停车场建设应当遵循节约和集约利用土地的原则,充分利用绿化、广场等地下空间建设地下停车场;充分利用立体空间建设立体式停车场。公共停车场建设应当合理配置,并加强与轨道交通换乘中心、公共交通枢纽建设的衔接。第六条公共停车场专业规划确定的停车场用地,未经法定程序调整,不得改变用途。公共停车场用地,应当依法办理用地手续。第七条市公安交通管理部门根据公共停车场专业规划,编制公共停车场年度建设计划,报市人民政府批准后实施。第八条鼓励单位和个人投资建设公共停车场。投资建设公共停车场可以享受的优惠政策,由市发展改革行政主管部门会同相关行政主管部门拟订,报市人民政府批准后执行。第九条公共停车场建设项目,由市发展改革、规划、土地行政主管部门联合向社会发布。
属于出让土地使用权的公共停车场建设项目,依法采取招标拍卖挂牌方式办理供地手续,并依法办理项目核准或者备案手续。
属于划拨土地使用权的公共停车场建设项目,依法采取公开招标的方式,选择公共停车场建设项目的投资建设、经营者;没有投标人且确需建设的项目,经市人民政府批准后,纳入市政基础设施建设计划或者市发展改革行政主管部门的年度建设计划,严格执行基本建设程序,在实施中按照代建制的办法进行。第十条新建、改建、扩建公共建筑、大(中)型建筑、商业街区、旅游区、居住区,应当考虑机动车停放需求,按照国家、省和本市停车场的设计标准和设置规范,配建、增建公共停车场、专用停车场。
配建、增建的公共停车场、专用停车场应当与主体工程同时设计、同时施工、同时交付使用。第十一条公共停车场、专用停车场的设计方案,应当符合国家、省和本市公共停车场、专用停车场的设计标准和设置规范。第十二条公共停车场、专用停车场竣工后,经验收合格方可交付使用。第三章公共停车场管理第十三条政府投资建设的公共停车场,应当采取公开招标的方式,选择专业停车场管理单位进行经营,出让经营权的收入全额上缴财政,实行收支两条线管理。
单位和个人投资建设的公共停车场,产权人可以自行经营,也可以委托专业停车场管理单位进行经营。第十四条公共停车场经营者应当依法办理工商、税务登记手续,并在工商登记后15日内,向公安交通管理部门备案。
公共停车场经营者变更登记事项或者经批准歇业的,应当按规定到工商、税务部门办理相关手续,并自变更、歇业之日起15日内向公安交通管理部门备案,同时向社会公告。第十五条任何单位和个人不得擅自将已建成的公共停车场挪作他用。因修改、调整城市规划确需改变公共停车场用途的,由城市规划行政主管部门征求公安交通管理部门的意见后进行审批,并由土地行政主管部门办理土地变更审批手续。
以上就是道尔智控小编解疑贡献者:(利刃者)贡献的关于“苏州市机动车停车场管理办法”的问题了,不知是否已经解决你的问题?如果没有,下一篇内容可能是你想要的答案,现在接着继续详述下文用户【以云为纸】贡献的“惠州市停车场建设与管理办法”的一些相关问题做出分析与解答,如果能找到你的答案,可以关注本站。
惠州市停车场建设与管理办法
贡献用户名:【以云为纸】 ,现在由道尔智控小编为你探讨与【停车场管理设计】的相关内容!
优质回答第一条为了加强本市停车场规划、建设和管理,规范停车秩序,促进城市可持续发展,根据《中华人民共和国道路交通安全法》、《南京市城市道路设施管理条例》等法律、法规,结合本市实际,制定本办法。第二条本办法所称停车场,是指供各类机动车和非机动车停放的露天或者室内场所,包括公共停车场、专用停车场和道路临时停车泊位。
公共停车场,是指为社会车辆提供停车服务的场所,包括独立建设的公共停车场、建设工程配建公共停车场。
专用停车场,是指为本单位、本居住区车辆提供停车服务的场所,包括建设工程配建专用停车场、建筑区划内共有部位施划的停车位等。
道路临时停车泊位是指依法在城市道路上施划设置的临时停车泊位。第三条本市市区范围内停车场的规划、建设、使用及管理活动,适用本办法。第四条停车场的规划、建设和管理应当遵循政府主导、统筹规划、有效管理、方便群众的原则,引导车主规范停车、提高停车场使用效能。第五条市人民政府依法加强停车场管理,通过行政管理、经济杠杆等方式合理调控机动车流量,引导机动车有序停放。
街道办事处配合相关行政主管部门做好停车场的行政管理和社会宣传工作。第六条市城市管理行政主管部门是本市停车场管理的行政主管部门,所属的停车设施管理机构负责日常管理工作。区城市管理行政主管部门负责辖区内停车场的监督管理工作。
规划、住房和城乡建设、公安机关交通管理、价格、财政、税务、交通运输、国土资源、人防、商务等行政主管部门按照各自职责,做好停车场的相关管理工作。第七条市城市管理行政主管部门会同市公安机关交通管理等行政主管部门组织建立城市公共停车信息系统,通过网站、停车诱导指示牌等方式,向社会公众提供停车场位置、停车泊位剩余数量等信息服务。
鼓励停车场经营管理者采用智能化、信息化等手段进行停车管理。第八条市住房和城乡建设行政主管部门会同市规划、城市管理、公安机关交通管理等行政主管部门根据城市总体规划的要求,编制公共停车场专项规划和停车场设置规范,报市人民政府批准后实施。第九条新建、改建、扩建独立或者配建的公共停车场应当符合城市总体规划、公共停车场专项规划和停车场设置规范,并根据残疾人的停车需求设置残疾人专用停车泊位。
城市交通枢纽、城市轨道交通换乘中心、大中型商贸或者公共活动场所,应当规划建设公共停车场。
住宅小区应当按照停车设施配建标准和相关设计规范配套建设停车设施,满足本小区业主的停车需求。第十条建设项目停车设施配建标准由市规划行政主管部门会同市住房和城乡建设、城市管理、公安机关交通管理部门制定,报市人民政府批准后实施。
规划行政主管部门应当根据城市交通发展情况和城市停车需求变化,适时提高住宅小区、办公用房建设项目的停车设施配建标准,具体办法由市人民政府另行制定。第十一条规划行政主管部门在审查建设项目时,涉及停车场的,应当征求公安机关交通管理和城市管理行政主管部门的意见。建设项目没有按照规定设计、申报配建、增建停车场的,规划行政主管部门不得核发建设工程规划许可证。第十二条鼓励单位和个人采取多种方式投资建设和开办公共停车场。
鼓励在符合规划、环保、消防安全和特种设备安全的前提下,因地制宜建设立体式停车场和综合利用地下空间建设停车场。第十三条停车场建设项目应当按照批准的设计进行施工。
建设项目配建的停车场应当与主体工程同时设计、同时施工、同时交付使用,不得停用或者挪作他用。
停车场建设工程竣工后,建设单位应当及时组织规划、住房和城乡建设、城市管理和公安机关交通管理等行政主管部门进行验收。未经验收或者验收不合格的,建设项目不得投入使用。第十四条空闲土地符合公共停车场专项规划要求的,经规划行政主管部门批准,可以建设公共停车场。
政府储备和闲置期超过一年的待建土地,符合有关临时停车场建设条件且周边存在停车需求的,土地使用权人根据有关要求,可以设置临时停车场。
单位和个人投资建设公共停车场的,市、区人民政府可以按照规定给予奖励,具体办法由市财政部门会同相关部门另行制定。
上文就是道尔智控小编解答贡献者:(以云为纸)解答的关于“惠州市停车场建设与管理办法”的问题了,不知是否已经解决你的问题?如果没有,下一篇内容可能是你想要的答案,接下来继续解析下文用户【拥之则安〆】分享的“基于rfid的停车场系统设计”的一些相关疑点做出分析与解答,如果能找到你的答案,可以关注本站。
基于rfid的停车场系统设计
贡献用户名:【拥之则安〆】 ,现在由道尔智控小编为你详解与【停车场管理设计】的相关内容!
优质回答停车场系统方案有多种选择,与自己的需求相关联:
标准型 既有固定车辆停放,又有临时车辆停放,根据停放车辆、车型等对车辆进行收费,可选择标准型停车场智能停车场智能管理系统
简易型 简易型停车场智能管理系统可满足客户简单、经济的出入口控制管理。
不停车通行 不停车通行停车场智能管理系统无需停车刷卡,远距离射频读卡后可直接不停车通行。
中央收费 针对大型的、临时车流量很大、停车场内有专门收费的停车场,可选用的中央收费型停车场系统。
免布线系统 针对布线比较困难或复杂,应用又比较简单,可采用免布线停车场系统
通信方式 控制机有TCP/IP、RS485等多种读卡方式
读卡方式 可选配ID、IC、HID、远距离等多种读卡方式.
机箱 控制机机箱有多种选择,满足不同应用需求和环境
复杂停车场管理 可很好解决大型的、多出入的、出入口距离很远的、大套小的、多种收费方式的非常复杂的停车场管理。
红绿灯控制系统 对于进出口车辆均为一条通行车道的情况,尤其是弯道,为了防止车辆进出的冲突,采用红绿灯控制系统。
车牌自动识别系统 无需刷卡,当车辆驶入摄像机识别区域时车牌即可被抓拍,系统提取拍到的车牌号转换成数字格式与系统登记的车牌进行对比确认,确认后自动放行。
至于具体设计方面你还是需要找专业的厂家,例如厦门大手控制技术有限公司呀,他们在停车场行业至今已有十多年的历史,在停车行业内有着丰富的经验,为停车行业做出了重要的贡献。大手停车场系统被认可的性价比高的停车场系统厂家。
以上就是道尔智控小编解答(拥之则安〆)贡献关于“基于rfid的停车场系统设计”的答案,接下来继续为你详解用户(后来的我们)贡献“数据库停车场管理系统课程设计”的一些相关解答,希望能解决你的问题!
数据库停车场管理系统课程设计
贡献用户名:【后来的我们】 ,现在由道尔智控小编为你详解与【停车场管理设计】的相关内容!
优质回答#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define MAX 20
#define price 0.05
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()
{
SeqStackCar Enter,Temp;
LinkQueueCar Wait;
int ch;
InitStack(&Enter);
InitStack(&Temp);
InitQueue(&Wait);
while(1)
{
printf("\n1. 车辆到达登记");
printf(" 2. 车辆离开登记");
printf(" 3. 车辆列表显示");
printf(" 4. 退出系统\n");
while(1)
{
scanf("%d",&ch);
if(ch>=1&&ch<=4)break;
else printf("\n请选择: 1~4.");
}
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;
printf("\n车辆离开的时间:");
scanf("%d:%d",&(p->leave.hour),&(p->leave.min));
printf("\n离开车辆的车牌号为:");
puts(p->num);
printf("\n其到达时间为: %d:%d",p->reach.hour,p->reach.min);
printf("离开时间为: %d:%d",p->leave.hour,p->leave.min);
A1=p->reach.hour;
A2=p->reach.min;
B1=p->leave.hour;
B2=p->leave.min;
printf("\n应交费用为: %2.1f元",((B1-A1)*60+(B2-A2))*price);
free(p);
}
int Arrival(SeqStackCar *Enter,LinkQueueCar *W){
CarNode *p;
QueueNode *t;
p=(CarNode *)malloc(sizeof(CarNode));
flushall();
printf("\n请输入车牌号(例:豫B1234):");
gets(p->num);
if(Enter->top<MAX)
{
Enter->top++;
printf("\n车辆在车场第%d位置.",Enter->top);
printf("\n车辆到达时间:");
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(SeqStackCar *Enter,SeqStackCar *Temp,LinkQueueCar *W)
{
int room;
CarNode *p,*t;
QueueNode *q;
if(Enter->top>0)
{
while(1)
{
printf("\n请输入车在车场的位置/1--%d/:",Enter->top);
scanf("%d",&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++;
printf("\n便道的%s号车进入车场第%d位置.",t->num,Enter->top);
printf("\n请输入%s号车进入车场的时间:");
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(SeqStackCar *S)
{
int i;
if(S->top>0)
{
printf("\n车场:");
printf("\n 位置到达时间 车牌号\n");
for(i=1;i<=S->top;i++)
{
printf(" %d ",i);
printf(" %d:%d ",S->stack[i]->reach.hour,S->stack[i]->reach.min);
puts(S->stack[i]->num);
}
}
else printf("\n车场里没有车");
}
void List2(LinkQueueCar *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(SeqStackCar S,LinkQueueCar W)
{
int flag,tag;
flag=1;
while(flag)
{
printf("\n请选择 1|2|3:");
printf("\n1.车场列表\n2.便道列表\n3.返回主菜单\n");
while(1)
{
scanf("%d",&tag);
if(tag>=1||tag<=3) break;
else printf("\n请选择 1~3:");
}
switch(tag)
{
case 1:List1(&S);break;
case 2:List2(&W);break;
case 3:flag=0;break;
default: break;
}
}
}
今天的内容先分享到这里了,读完本文《停车场管理设计,停车场管理项目设计》之后,是否是您想找的答案呢?想要了解更多,敬请关注ask.drzk.cn,您的关注是给小编最大的鼓励。