停车场管理
【实验目的】 (1) 深入了解栈和队列的特性,掌握栈和队列的存储方法。 (2) 掌握栈和队列的基本操作,如初始化、入栈(队列)、出栈(队列)等,并能在实际问题背景下灵活运用。 【问题描述】 设停车场是一个可以停放n辆汽车的狭长通道,且只有一个大门可供汽车进出。汽车在停车场内按车辆到达时间的先后顺序,依次由北向南排列(大门在最南端,最先到达的第一辆车停放在车场的最北端),若车场内已经停满n辆汽车,则后来的汽车只能在门外的便道上等候,一旦有车开走,则排在便道上的第一辆车即可开入;当停车场内某辆车要离开时,在它之后进入的车辆必须先退出场为它让路,待该辆车开出大门外,其他车辆再按次序进入车场,每辆停放在车场的车在它离开停车场时必须按它停留的时间长短交纳费用,试为停车场编制按上述要求进行管理的模拟程序。 #define sz 10 #include<iostream.h> #include<stdio.h> #include<stdlib.h> typedef struct {//让车道 顺序栈 int a[2]; int top; }rang; void initr(rang &r){//初始化 r.top=0; } void rpush(rang &r,int e){//进栈 r.a[r.top]=e;r.top++; } void rpop(rang &r,int &e){//出栈 e