资源简介
设停车场内只有一个可停放n辆汽车的长通道,且只有一个大门可供汽车进出。汽车在停车场内按车辆到达时间的先后顺序,依次由北向南排列,若车场内已停满n辆车,则后来的汽车只能在门外的便道上等候,一旦有车开走,则排在便道上的第一辆车即可开入;当停车场内某辆车要离开时,在它之后开入的车辆必须先退出车场为它让路,等该辆车开出大门外,其它车辆再按原次序进入停车场,每辆停放在车场的车在它离开停车场时必须按它停留的时间长短交费
代码片段和文件信息
#include
using namespace std;
typedef struct Time{
int data;
int hour;
int min;
}Time;//时间节点
typedef struct StackNode{
char mess[15];
int num;
Time reach;
Time leave;
struct StackNode *next;
}CarNode;//入库车辆信息节点
typedef struct Stack{
CarNode *stack[5];
int top;
}CarStack;//模拟车库
typedef struct QueueNode{
char mess[15];
QueueNode *next;
}QueueNode;//便道车辆信息节点
typedef struct Queue{
StackNode *head;
StackNode *rear;
}linkQueue;//模拟便道
void InitStack(CarStack *s);/*初始化栈*/
void InitQueue(linkQueue *road);/*初始化队列*/
void CreatStack(CarNode *CarCarStack *garage);//车进库
void CreatQueue(CarNode *CarlinkQueue *road);//车进便道
void PopStack(CarStack *garageCarStack *TemplinkQueue *road);//车出库
void GetCarNode(CarStack *garagelinkQueue *road);//获取车辆信息
void InfoStack(CarStack *garage);//车库车辆信息
void InfoQueue(linkQueue *road);//便道车辆信息
void Print(CarNode *Car);//打印出库车信息
void main()
{
int i=0j=0k=1;
CarStack garageTemp;
linkQueue road;
InitStack(&garage);
InitStack(&Temp);
InitQueue(&road);
while(k){
i=0;
while(!i){
cout<<“*---------*欢迎光临停车场,本停车场每分钟收费0.01元*---------*“< cout<<“**************************************************************“< cout<<“* 1-存车 2-取车 3-列表 4-退出程序 *“< cout<<“**************************************************************“< cin>>i;
if(i<1||i>4){
cout<<“请重新选择!“< i=0;
}
}
switch(i){
case 1:
GetCarNode(&garage&road);//获取车辆信息
break;
case 2:
PopStack(&garage&Temp&road);//车出库
break;
case 3://查询车辆信息
j=0;
while(!j){
cout< cout<<“********************************************“< cout<<“* 1-车库 2-便道 3-返回 *“< cout<<“********************************************“< cin>>j;
if(j<1||j>3){
cout<<“请重新选择!“< j=0;
}
switch(j){
case 1:
InfoStack(&garage);//车库车辆信息
j=0;
break;
case 2:
InfoQueue(&road);//便道车辆信息
j=0;
break;
case 3:
j=1;
break;
}
}
break;
case 4:
k=0;
break;
}
cout< cin.clear();
}
}
void InitStack(CarStack *s)/*初始化栈*/
{
int i;
s->top=0;
for(i=0;i<=4;i++)
s->stack[s->top]=NULL;
}
void InitQueue(linkQueue *road)/*初始化队列*/
{
road->head=(StackNode *)malloc(sizeof(StackNode));
if(road->head!=NULL){
road->head->next=NULL;
road->rear=road->head;
}
}
void GetCarNode(CarStack *garagelinkQueue *road)//获取车辆信息
{
CarNode *Car=(CarNode *)malloc(sizeof(CarNode));
if(garage->top<5&&garage->top>=0){
cout<<“请输入车辆号码 如(冀D6666):“;
cin>>Car->mess;
cout<<“请输入车辆进站时间(日-时:分)“;
scanf(“%d-%d:%d“&(Car->reach.data)&(Car->reach.hour)&(Car->reach.min));
cout<<“车辆进入车库!“< CreatStack(Cargarage);//车进库
}
else{
cout<<“请输入车辆号码 如(冀D6666):“;
cin>>Car->mess;
cout<<“车库已满,车辆停进便道“<
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 271208 2011-05-09 17:50 tingchechang\Debug\main.obj
文件 565343 2011-05-09 17:50 tingchechang\Debug\tingchechang.exe
文件 800484 2011-05-09 17:50 tingchechang\Debug\tingchechang.ilk
文件 2030156 2011-05-09 17:46 tingchechang\Debug\tingchechang.pch
文件 1115136 2011-05-09 17:50 tingchechang\Debug\tingchechang.pdb
文件 115712 2011-05-19 17:58 tingchechang\Debug\vc60.idb
文件 110592 2011-05-09 17:50 tingchechang\Debug\vc60.pdb
文件 6031 2011-05-09 17:50 tingchechang\main.cpp
文件 4348 2011-04-30 18:06 tingchechang\tingchechang.dsp
文件 549 2011-04-30 14:47 tingchechang\tingchechang.dsw
文件 58368 2011-05-19 17:58 tingchechang\tingchechang.ncb
文件 53760 2011-05-19 17:58 tingchechang\tingchechang.opt
文件 258 2011-05-09 17:50 tingchechang\tingchechang.plg
目录 0 2011-05-09 17:50 tingchechang\Debug
目录 0 2011-05-19 17:58 tingchechang
----------- --------- ---------- ----- ----
5131945 15
相关资源
- vc写的一个游戏里面三维场景漫游
- 编程常用的素材(含png、jif、bmp、j
- 论文研究 - 城市停车场规划与管理研
- Matalb实现停车场完整系统
- Midas to FLAC3D-vs2010
- 直通BAT算法精讲
- ros小海龟定点移动程序
- 学生成绩档案管理系统—保证可用
- 面试算法LeetCode刷题班
- 交通咨询模拟系统
- Qt开机唤醒狩猎者
- 路由分组转发仿真系统的设计与实现
- 周立功CAN接口开发资料
- 仿QQ截图工具源代码
- NOIP必学内容之前缀和与差分颜鸿宇
- QT利用realtimechart画波形图
- 停车场信息管理系统设计与实现.rar
- 基于OpenCV3.0的手势识别.rar
- QT实现音频实时传输
- Visual Studio Community 2017
- 天天爱消除
- Qt5的多线程小程序,实现按钮开关线
- 三维场景漫游.zip
- OpenCV中对图片进行灰度处理
- 张正友相机标定自己编写calibratie函数
- 快递单邮政编码识别系统的实现
- OPC+UA+SDK
- 西门子开发的OPC UA客户端和源码
- 数据结构课程设计——哈夫曼编/译码
- 适用于VC的FFMpeg静态库已编译)
评论
共有 条评论