数据结构 停车场管理系统文档格式.docx

上传人:b****3 文档编号:15098528 上传时间:2022-10-27 格式:DOCX 页数:18 大小:45.55KB
下载 相关 举报
数据结构 停车场管理系统文档格式.docx_第1页
第1页 / 共18页
数据结构 停车场管理系统文档格式.docx_第2页
第2页 / 共18页
数据结构 停车场管理系统文档格式.docx_第3页
第3页 / 共18页
数据结构 停车场管理系统文档格式.docx_第4页
第4页 / 共18页
数据结构 停车场管理系统文档格式.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

数据结构 停车场管理系统文档格式.docx

《数据结构 停车场管理系统文档格式.docx》由会员分享,可在线阅读,更多相关《数据结构 停车场管理系统文档格式.docx(18页珍藏版)》请在冰豆网上搜索。

数据结构 停车场管理系统文档格式.docx

2、算法描述与实现

(1)时间结点类型

typedefstructtime{

inthour;

intmin;

}Time;

/*时间结点*/

(2)车辆进出站信息类型

typedefstructnode{

charnum[10];

Timereach;

Timeleave;

}CarNode;

/*车辆信息结点*/

(3)停车场和便道信息类型

typedefstructNODE{

CarNode*stack[Max+1];

inttop;

}SeqStackCar;

/*模拟车站*/

typedefstructcar{

CarNode*data;

structcar*next;

}QueueNode;

typedefstructNode{

QueueNode*head;

QueueNode*rear;

}LinkQueueCar;

/*模拟通道*/

voidInitStack(SeqStackCar*,intn);

/*声明栈*/

//初始化,创建一个新栈S用于停车场

intInitQueue(LinkQueueCar*);

/*声明便道*/

//初始化,创建一个队列Q用于便道

intArrival(SeqStackCar*,LinkQueueCar*,intn);

/*车辆进站*/

{

CarNode*p;

QueueNode*t;

p=(CarNode*)malloc(sizeof(CarNode));

flushall();

printf("

\n请输入车牌号(例如:

吉A1234):

"

);

gets(p->

num);

if(Enter->

top<

MAX)/*车场未满,车进车场*/

{

Enter->

top++;

printf("

\n车辆在车场第%d位置."

Enter->

top);

\n请输入到达时间:

/**:

**/"

scanf("

%d:

%d"

&

(p->

reach.hour),&

reach.min));

stack[Enter->

top]=p;

return

(1);

}

else/*车场已满,车进便道等待*/

\n该车须在便道等待!

t=(QueueNode*)malloc(sizeof(QueueNode));

t->

data=p;

next=NULL;

W->

rear->

next=t;

rear=t;

}

voidLeave(SeqStackCar*,SeqStackCar*,LinkQueueCar*,intn);

/*车辆出站*/

(4)主函数和其它函数的伪码算法

voidmain()

SeqStackCarEnter,Temp;

LinkQueueCarWait;

intch;

intn;

n=getn();

InitStack(&

Enter,n);

/*初始化车场*/

Temp,n);

/*初始化让路的临时栈*/

InitQueue(&

Wait);

/*初始化便道*/

while

(1)

\n1.车辆进站"

2.车辆出站"

3.存车信息"

4.退出系统\n"

while

(1)

{

printf("

请选择:

1|2|3|4.\n"

scanf("

ch);

fflush(stdin);

do

{

if(ch>

4||ch<

1){

printf("

输入有误,请重新输入!

scanf("

fflush(stdin);

}

else

break;

}

while(ch>

1);

break;

}

switch(ch)

{

case1:

Arrival(&

Enter,&

Wait,n);

break;

case2:

Leave(&

Temp,&

/*车辆出站*/\

case3:

List(Enter,Wait);

/*存车信息*/

case4:

exit(0);

/*退出系统*/

default:

}

系统测试

程序初始界面:

车辆进站:

停车场存车信息:

车辆进入便道:

车辆出站:

便道上的车出站:

五、设计总结

参考文献:

《数据结构程序设计题典》

李春葆等编清华大学出版社

《数据结构(C语言版)》

黄国瑜叶乃菁编清华大学出版社

《数据结构课程设计》

苏仕华等编机械工业出版社

附录:

#include<

stdio.h>

stdlib.h>

string.h>

malloc.h>

/*------------------------------------------------------------------------------*/

#defineMax10

intgetn()

{

欢迎您光临吉吉停车场,"

本停车场管理实行24小时制,停车每分钟0.1元.\n"

请输入停车场可容纳的车(最多10辆):

scanf("

n);

fflush(stdin);

do

if(n<

1||n>

10)

{

输入的车辆数不在要求范围内,请重新输入!

fflush(stdin);

}

elsebreak;

while(n<

10);

returnn;

typedefstructtime

inthour;

intmin;

typedefstructnode

charnum[10];

Timereach;

Timeleave;

typedefstructNODE

CarNode*stack[Max+1];

inttop;

typedefstructcar

CarNode*data;

structcar*next;

typedefstructNode

QueueNode*head;

QueueNode*rear;

voidList(SeqStackCar,LinkQueueCar);

/*显示存车信息*/

voidInitStack(SeqStackCar*s,intn)/*初始化栈*/

inti;

s->

top=0;

for(i=0;

i<

=n;

i++)

s->

stack[s->

top]=NULL;

}

intInitQueue(LinkQueueCar*Q)/*初始化便道*/

Q->

head=(QueueNode*)malloc(sizeof(QueueNode));

if(Q->

head!

=NULL)

Q->

head->

rear=Q->

head;

elsereturn(-1);

v

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 节日庆典

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1