《数据结构》课程设计报告--停车场管理.doc

《数据结构》课程设计报告--停车场管理.doc

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
共15页 第 PAGE 14 页 《数据结构》课程设计报告 设计题目 停车场管理系统 专 业 X X X X 班 级 姓 名 XXX 学 号 XXXXXX 完成日期 XXXXXXX 目 录 1. 问题描述………………………………………………2 2. 系统设计………………………………………………2-3 3. 数据结构与算法描述…………………………………3-4 4. 测试结果与分析………………………………………4-7 5. 总 结…………………………………………………7-8 6. 参考文献………………………………………………8 附录 程序源代码…………………………………………8-14 停车场管理系统 1. 问题描述 设有一个可以停放n辆汽车的狭长停车场,它只有一个大门可以供车辆进出。车辆按到达停车场时间的早晚依次从停车场最里面向大门口处停放(最先到达的第一辆车放在停车场的最里面)。如果停车场已放满n辆车,则后来的车辆只能在停车场大门外的便道上等待,一旦停车场内有车开走,则排在便道上的第一辆车就进入停车场。停车场内如有某辆车要开走,(判断其是否为第n辆车,进而判断是否需要让路)在它之后进入停车场的车都必须先退出停车场为它让路,待其开出停车场后,这些车辆再依原来的次序进场。(此时可以另设一个辅助栈,将编号大于要离开车的编号的车按退出次序入栈,待车开走后,再将辅助栈中的车依次出栈并进入停车场栈中)每辆车在离开停车场时,都应根据它在停车场内停留的时间长短交费。(可以按每时刻价格缴费)如果停留在便道上的车未进停车场就要离去,允许其离去,不收停车费,并且仍然保持在便道上等待的车辆的次序。(在便道上的车要离开时,同样将其前面的车即编号小于它的车依次入辅助队列,待车开走后,再将辅助队列中的车依次出队并进入便道队列中)以下编制的程序为模拟该停车场的管理。 2. 系统设计 2.1 设计目标 根据问题的描述,来设计一个停车场管理系统的程序。程序功能:输出每辆车到达后的停车位置,以及某辆车离开停车场时应交纳的费用和它在停车场内停留的时间。如果不需交费,允许其离开,这时可不输出上述信息,提示其可以离开,不需交费即可。 2.2 设计思想 类似于现实生活中的管理系统,程序运行时会显示主菜单,根据用户的选择显示不同的信息,提示用户作相应的操作。 从看到该程序的要求及提示,知道本程序要用到栈和队列,这是主线,再根据编程时的具体要求,在加入其他的知识。具体参见以下数据结构及算法描述。 2.3 系统模块划分(要给出流程图) 表2-3 停车信息表 列名 数据类型 长度 可否为空 停车位置标志 integer 1 Not null 车编号 int Not null 车到达时刻 clock_t Not null 车离开时刻 clock_t Not null 应交纳费用 double Null 备注 车到达、离开时刻均为clock_t的对象,要调用其函数clock() 3. 数据结构与算法描述 根据问题描述及实现提示,知道该程序主要用到数据结构中栈和队列的知识。这是主线,在编程的时候,首先用一个栈CarStack表示停车场,而便道则用队列RoadQueue表示。根据程序的要求,当有车从停车场中离开时,首先需要判断该车是否为停车场最后一辆车,然后根据结果判断是否需要其他车为其让路。显然在让路的时候,需要增加一个辅助栈Sf.同样便道上的车离开时,根据结果,确定是否需要增加辅助队列Qf. 另外,由于在车离开时要判断是否交费,所以需要存储每辆车的信息,我在程序中又加入了顺序表SqList.并将其元素类型elemtype定义为结构体类型,以便包含多个数据项。该停车场是按照车辆的停留时间进行收费的,所以我调用C++系统函数clock(),通过到达和离开时间差值来计算所需收取的费用。 进 入 系 统 进 入 系 统 主 主 菜 单 使用说明 退出 使用说明 退 出 离开交费 需要停车 程序自动生成到达车编号bh 产生到达时刻t1=clock() 程序自动生成到达车编号bh 产生到达时刻t1=clock() 标志位flag 输入离开车的编号ph 调用系统时间t2=clock() 交费total_money 图3 图3-1 总体结构设计框

您可能关注的文档

文档评论(0)

好老师 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档