数据结构课程设计之双层停车场.doc

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构课程设计之双层停车场

洛 阳 理 工 学 院 课 程 设 计 报 告 课程名称 数据结构课程设计 设计题目 双层停车场 专 业 计算机科学与技术 班 级 B150406 学 号 姓 名 文 熊 完成日期 2016.12.30 课 程 设 计 任 务 书 设计题目: 双 层 停 车 场 管 理 1.算法思想 整个管理系统设计可设计为停车模块、取车模块、车辆浏览信息模块。 另外车辆停放信息涉及到从car.dat中读取,保存和修改,为了方便起见,和程序的模块化,我们将文件的读入和保存单独设计为两个子程序。 模块划分 (1)通过读取car.dat的数据,对程序初始化。 在init()通过一个for循环完成对car.dat中数据的读取。 设计一个子程序saveAll()用来保存停车场车位的信息到car.dat。 用for循环再将处理后的数据存入文件中。 (3)停车void putCar() 首先,输入车辆的车牌号,我们从键盘读取车牌号码,并判断车牌号码是否正确(五位数整型车牌号码)。输入出错时要求继续输入。我们引入flag标志量判断车牌号是否正确,初始int flag=1,从键盘读入车牌号码,并判断: 其次,读取的车牌号正确之后对标志量清零flag=0,代表没有没有找到车位,进行为车辆找停车位的操作。 通过for循环和continue语句找到没有停车的车位,即car[i][0]不等于0,并将标志量flag赋值1,表示有车位,用break语句跳出循环。 再用if语句处理flag==1的情况,即停车场车位已满无法停车。 最后,对存入的车辆赋初始时间5,并且前面的已存入的车辆时间都加5。 (4)取车void getCar() 读取要提取车辆的车牌号码。再通过flag标志量对所输入车牌号正误分别处理。(初始flag=0),对于输入正确的车辆进行操作:删除车辆信息,再计算费用,再对时间清零并标志取车成功。进过上一步后取车不成功时即flag还是为0时,提示重复输入车牌号直道成功为止。 有选择性的显示收费价格 取车函数中,取车时,选择性的显示收费价格 (6)车辆信息浏览void showInfo() 浏览停车场的全部信息 3.数据结构 使用全局变量数组,用一个二维数组实现停车场车位的信息, int cars[12][4]; 测试结果 假设停车场初始状态为第一层已经停有 4 辆车,其车位号依次为 1—4,停车时间依次 为 20,15,10,5。 停车操作:当一辆车进入停车场时,先输入其车牌号,再为它分配一个层号和一个车 位号(分配前先查询车位的使用情况, 如果第一层有空则必须停在第一层), 停车时间设为 5, 最后将新停入的汽车的信息添加文件“car.dat”中,并将在此之前的所有车的停车时间加 5。 收费管理(取车):当有车离开时,输入其车牌号,先按其停车时间计算费用,每 5 分 钟 0.2 元。(停车费用可设置一个变量进行保存),同时从文件“car.dat”中删除该车的信 息, 并将该车对应的车位设置为可使用状态(即二维数组对应元素清零)。 按用户的选择来判 断是否要输出停车收费的总计。 输出停车场中全部车辆的信息。 洛 阳 理 工 学 院 课 程 设 计 报 告 2 输入车辆车牌号存车 putCar 停车模块 saveAll将车辆信息存入car.dat 输入车牌号码取车 getCar 取车模块 删除车辆信息 显示停车费用 Main 键盘式菜单 showInfo 车位信息 Exit 退出 图1 整体模块图

文档评论(0)

文档精品 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:6203200221000001

1亿VIP精品文档

相关文档