收藏 分享(赏)

数据结构实验(停车场问题).doc

上传人:scg750829 文档编号:6187439 上传时间:2019-04-01 格式:DOC 页数:6 大小:124KB
下载 相关 举报
数据结构实验(停车场问题).doc_第1页
第1页 / 共6页
数据结构实验(停车场问题).doc_第2页
第2页 / 共6页
数据结构实验(停车场问题).doc_第3页
第3页 / 共6页
数据结构实验(停车场问题).doc_第4页
第4页 / 共6页
数据结构实验(停车场问题).doc_第5页
第5页 / 共6页
点击查看更多>>
资源描述

1、 数据结构课程实验实 验 报 告题目: 停车场管理 专业: 计算机科学与几技术 班级: 姓名: 学号: 完成日期: 一、试验内容设停车场是一个可以停放 n 辆汽车的狭长通道,且只有一个大门可供汽车进出。汽 车在停车场内按车辆 到达时间的先后顺序,依次由北向南排列(大门在最南端,最先到达的第一辆车 停放在车场的最北端),若车场内已经停满 n 辆汽车,则后来的汽车只能在门 外的便道上等候,一旦有车开走, 则排在便道上的第一辆车即可开入;当停车场内某辆车要离开时,在它之后进入的车辆必须先退出场为它让路,待该辆车开出大 门外,其他 车辆再按次序 进入车场,每 辆停放在车场的车在它离开停车场时必须按它停

2、留的时间长短交纳费用,试为停车场编制按上述要求进行管理的模拟程序。以栈模拟停车场,以队列模拟车场外的便道,按照从终端读入的输入数据序列进行模拟管理。每一组输入数据包括三个数据项:汽车“到达 ”或“离去”信息、汽 车牌照号码以及到达或离去的时刻。对一组输入数据进行操作后的输出信息为:若是车辆到达,则输出汽车在停车场内或便道上的停车位置;若是车辆离去, 则输出汽车在停车场内停留的时间和应交纳的费用(在便道上停留的时间不收费)。二、试验目的(1)深入了解栈和队列的特性,掌握栈和队列的存储方法。(2)掌握栈和队列的基本操作,如初始化、入栈(队列)、出栈(队列)等,并能在实际问题背景下灵活运用。三、流程

3、图输入数据判断结束i f ( m = = e | | m = = E )判断如果车到达存入便道存入停车场如果停车场满了如果车离开判断车的位置离开 , 后面的车向前排判断车是否是最后一位离开 , 计算结果如果是最后一位后面的车退出如果不是如果车在停车场内如果车在便道上便道内的车开进场内最后一位四、源程序代码#includevoid main()struct cc1int hm1,sk1;a5;/停车场struct bdint hm2,sk2;b5;/便道struct cc2int hm3,sk3;c4;/存放从停车场内退出的车int p=0,q=0,x=0,n,y,t,r,i,j,g,h,z;c

4、har m;printf(“输入停车场容量和每分钟收费n“);scanf(“%d%d“,printf(“输入数据:n“);for(;)scanf(“%c“,/判断输入数据if(m=e|m=E)break;scanf(“%d%d“,/t 表示车牌号,r 表示时间/车到达if(m=a|m=A)if(pi;j-)cx.hm3=aj.hm1;cx.sk3=aj.sk1;x+;printf(“%d 号车在停车厂内停留了%d 分钟,应交纳%d 元钱.n“,t,r-ai.sk1,y*(r-ai.sk1);for(j=i;x-1=0;x-,j+)/退出的车再进入停车场内aj.hm1=cx-1.hm3;aj.s

5、k1=cx-1.sk3;if(q!=0)/便道内的车进入停车场ap.hm1=b0.hm2;ap.sk1=r;p+;for(j=0;jq-1;j+)bj.hm2=bj+1.hm2;bj.sk2=bj+1.sk2;q-;break;/判断车是否停在便道上for(i=0;iq;i+,z=q)if(bi.hm2=t)printf(“该车停留在便道内,不收费.n“);for(j=i;jq-1;j+)bj.hm2=bj+1.hm2;bj.sk2=bj+1.sk2;q-;break; if(g=h 五、调试过程调试过程中,车离开的那一部分经常出现错误,运行结果和预想的不太一样,后来发现是停车场的计数器那出现了问题,使离开后再进入停车场的位置发生了错误。如果输入的离开时间 比到达的时间小, 则会出 现付费为负值。六、结果分析

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

当前位置:首页 > 中等教育 > 中学实验

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报