停车场管理系统程序设计书
- 格式:doc
- 大小:1.00 MB
- 文档页数:36
Xxxxx大学xxxxxxxxxxx系20xx-20xx学年第一学期《C程序设计》课程设计题目名称:停车场管理系统设计姓名:学号:班级:指导教师:编写日期: 20 年1月5日—20 年1月31日成绩:目录(一)需求分析 (3)1-1停车 (3)1-2取车 (3)1-3功能的选择 (3)(二)总体设计(程序设计组成框图) (3)2-1停车模块 (3)2-2取车模块 (3)2-3车辆信息浏览模块 (4)2-4程序设计组成框图 (4)(三)详细设计 (4)3-1停车场分析 (4)3-2停车操作 (4)3-3收费管理(取车) (5)3-4车辆信息 (5)3-5退出系统 (5)(四)程序运行结果测试与分析 (5)(五)结论与心得 (7)(六)参考文献 (7)(七)致谢 (8)附录: (8)(一)需求分析1-1停车车辆信息要用文件存储,因而要提供文件的输入输出操作。
1-2取车当车离开时,要删除文件中该车的信息,因而要提供文件的删除操作。
1-3功能的选择提供现实操作和用键盘式菜单实现功能选择。
(二)总体设计(程序设计组成框图)2-1停车模块对车辆信息赋值,分配前检查车位使用情况(按行查找park 数组,元素为0 表示车位为空,则允许分配)。
把新添加的车辆信息以追加的方式写入汽车信息文件,并更改汽车信息文件中其他汽车信息的停车时间(停车时间加5)。
2-2取车模块计算费用(停车费用=停车时间*0.2 元),从文件中删除该车信息。
并将该车位对应的二位数组变量设为0,表示该车位可用。
输出提示信息:是否输出停车费用总计?(Y/N)如果选择Y,则输出停车费用,否则回到上级菜单。
2-3车辆信息浏览模块输出车辆信息文件中的记录。
另外,用户按Esc 键退出系统。
2-4程序设计组成框图(三)详细设计3-1停车场分析有一个两层的停车场, 每层有6个车位, 当第一层车停满后才允许使用第二层。
( 停车场可用一个二维数组实现, 每个数组元素存放一个车牌号 ) 假设停车场初始状态为第一层已经停有4辆车, 其车位号依次为1—4 , 停车时间依次为20, 15, 10 , 5 . 即先将这四辆车的信息存入文件”car.dat”中。
智慧停车管理系统设计方案智慧停车管理系统是一种利用现代科技手段来对停车场进行智能化管理的系统。
该系统可以对停车场进行实时监控、车辆信息记录、收费管理等功能,并通过互联网和移动设备与用户进行交互。
以下是一个智慧停车管理系统的设计方案:1. 系统架构设计:智慧停车管理系统采用分布式架构,包含三个主要模块:硬件控制模块、软件控制模块和用户接口模块。
- 硬件控制模块包括车辆识别设备、摄像头、LED显示屏、停车场入口/出口指示器等设备。
这些设备负责车辆的识别、数据采集和显示等功能。
- 软件控制模块包括车辆识别算法、数据存储和处理模块、以及停车场管理软件。
这些模块负责对车辆进行识别、数据处理和管理等功能。
- 用户接口模块包括移动应用程序和网页应用程序。
用户可以通过这些应用程序进行在线预订停车位、查询停车场信息、支付停车费用等操作。
2. 识别和数据采集:系统使用先进的车辆识别技术,如车牌识别和车辆特征识别等,对进入和离开停车场的车辆进行识别。
识别结果将通过网络传输给软件控制模块,并存储在数据库中供后续查询和管理。
同时,系统还可以通过传感器采集停车场内的车位数量和使用情况。
3. 停车位预订和导航:用户可以通过移动应用程序或网页应用程序实时查询停车场的车位情况,并进行在线预订。
预订成功后,用户可以通过导航功能直接到达预订的停车位。
4. 收费管理和支付:系统可以根据停车时长和停车位类型等因素计算出停车费用,并通过移动支付或线下收费的方式进行支付。
用户可以通过移动应用程序或网页应用程序查询停车费用并完成支付。
5. 实时监控和报警:系统可以通过摄像头实时监控停车场的情况,并对异常情况进行报警。
例如,当有未经授权的车辆进入停车场时,系统可以及时发送警报给管理员。
6. 数据分析和报表:系统可以对停车场的数据进行分析,如停车位使用率、最繁忙的小时段等。
管理员可以通过报表来了解停车场的运营情况,并进行相应的优化和调整。
总结:智慧停车管理系统通过引入现代科技手段,提高了停车场的管理效率和用户体验。
软件详细设计说明书1 引言1.1 编写目的参考概要设计报告,在概要设计对停车场系统所做的模块结构设计的基础上,对系统进行详细设计。
本说明书主要是用对整个系统进行一系列的介绍,分析系统的处理流程,对各个界面进行功能说明,增加用户对系统的了解帮助用户。
本文主要介绍停车场管理系统的详细设计,主要读者包括产品人员,软件开发人员,软件测试人员。
1.2 背景随着社会经济的迅猛发展,人民生活水平的提高,汽车业发展也日新月异。
轿车普及率大大提高。
相应的,对汽车的管理也显得越来越重要,根据停车场希望能充分利用现代科技来提高工作效率,对原有人工管理系统进行计算机化的升级,使得管理人员的工作更方便,工作效率更加高。
停车场管理系统应运而生。
1.3 定义停车场管理系统:基本元素为构成停车场管理及其相关行为所必须的各个部分:“车辆到达和离开停车场的信息更新管理”,“车辆到达和离开停车场便道的信息更新管理”,“停车场车辆停靠信息总览”,及“停车场便道停靠车辆信息总览”。
模块:在程序设计中,为完成某一功能所需的一段程序或子程序;在软件系统中存在多个不同的模块,分别实现不同的功能。
1.4 参考资料停车场管理系统需求规格说明书2 程序系统的结构本系统在车辆进入停车场时主要输入车辆的车牌信息并抓拍车辆图像,然后进行车位分配、记录以及时间的记录。
在车辆离开时,会全自动计算停留时间和用户停留的费用并拍下车辆离车图像并更新车位信息。
停车场管理系统的功能可以划分为如下几个部分:菜单设计:该系统采用会员密码进入,即每次开启软件都需要输入相应的会员密码才可以进入,并且有不同的界面出现(持不同会员卡登陆者的权限不同)。
菜单有车辆进入,车辆搜索,车辆显示,车辆离开,退出,会员,便道这几个选项,包含了软件的所有功能介绍。
车辆到达:该模块可以添加新进入车辆的信息,有2种不同的形式添加,一个是普通添加,即在公共停车场停车,另一个是会员添加,可以开辟一个特殊固定的停车位给那些会员优先停车,达到多样化,人性化。
《智能停车场管理系统的设计与实现》篇一一、引言随着社会经济的快速发展和汽车保有量的日益增加,传统的停车场管理模式已经无法满足日益增长的管理需求。
为提高停车场的运行效率、保证安全便捷的停车体验,智能停车场管理系统应运而生。
本文旨在阐述智能停车场管理系统的设计与实现过程,以期为相关领域的研究与应用提供参考。
二、系统设计(一)系统架构设计智能停车场管理系统采用模块化设计,主要包括以下几个部分:用户界面模块、数据存储模块、车辆识别模块、收费管理模块、安全监控模块等。
各模块之间通过数据接口进行信息交互,实现系统的整体功能。
(二)功能模块设计1. 用户界面模块:提供友好的用户操作界面,方便用户进行停车操作和查询。
2. 数据存储模块:负责存储车辆信息、停车记录等数据,采用数据库技术进行数据管理。
3. 车辆识别模块:通过车牌识别技术、视频监控等技术实现车辆的自动识别和记录。
4. 收费管理模块:实现自动计费、收费和发票管理等功能,提高收费效率。
5. 安全监控模块:通过视频监控、报警系统等手段保障停车场的安全。
(三)技术实现系统采用先进的物联网技术、云计算技术和大数据技术等,实现车辆的自动识别、计费、监控等功能。
同时,系统支持移动支付、电子发票等便捷的支付方式,提高用户体验。
三、系统实现(一)硬件设备智能停车场管理系统需要配备的硬件设备包括:车牌识别摄像头、道闸、地感线圈、LED显示屏、网络设备等。
这些设备通过有线或无线网络与系统主机进行连接,实现数据的实时传输和处理。
(二)软件系统软件系统是智能停车场管理系统的核心部分,包括操作系统、数据库管理系统、应用程序等。
系统采用模块化设计,方便后期维护和升级。
同时,系统支持多种操作系统和数据库管理系统,具有良好的兼容性和扩展性。
(三)系统集成与测试在系统实现过程中,需要进行系统集成与测试。
首先,将各硬件设备和软件系统进行集成,确保各部分之间的数据传输和处理正常。
其次,进行系统测试,包括功能测试、性能测试、安全测试等,确保系统的稳定性和可靠性。
和/空嫌谬/薯程序停车场管理系统(2013 /2014 学年第1学期)题目停车场管理系统停车场管理系统一、课题内容和要求(1) 管理人员根据口令进入系统;(2) 管理车位信息(车位编号,状态)和每分钟的收费费率;(3) 停车时录入汽车停泊信息(车牌号,车型,停泊位置,停泊开始时间) ;如果车位已满要给出提示;(4) 取车时,根据车牌取,如果没有给出提示;需要根据车辆停泊时间自动计算费用并显示在屏幕上。
二、需求分析停车场管理系统的功能框架图如图1所示。
图1停车场管理系统功能框架图(1)管理员登陆:其实现是在设计程序时定义一个字符串数组作为密码,在管理员想通过主菜单界面登陆到管理系统的时候,系统要求管理员输入密码,将保存的密码和管理员输入的密码进行比较,如果一致则跳出密码登陆函数进入管理界面。
(2)车位信息:可查询当前时间车库的基本停车情况。
(3)车辆驶入:进入此系统后,输入当前时间和车牌号码,若有空位则停车成功,否则显示车库已满,自动返回上一层操作系统。
(4)车辆驶离:进入此系统后,依次输入车牌号码,停车时间,当前时间,若查找到所输入的车牌信息,则显示本次停车应付金额,并显示取车成功。
若无输入的车牌号码信息,则显示取车错误并返回上层操作系统。
(5)退出系统:当程序使用结束的时候,通过该项功能即可终止程序。
三、概要设计1 •用户登录开始进入停车系统结束2.信息查询开始选择输入1、2、3、4输出信息3.主体程序开始输入车牌号查询信息退出|!查查询询车历位史信息四、源程序代码#in elude <iostream>#in elude <stdio.h>#in elude <stri ng>#in elude <time.h>#in elude<fstream>using n amespaee std;elass ear{publie:ehar no [9];int pos;double fee;void putcar();void takeear();};elass Time{publie:int hour;int min;void getime();};int i,poi;in t positio n[100]={0};〃全局变量ear earin [100];Time eatime[100];int juge();int eomp();void seareh_ no();void seareh_pos();void mai n(){///////////////////////////////////////////// 用户登录const ehar ha[10]="hahaha";// 管理员用户名const ehar hb[10]="1234";////〃管理员密码ehar en[10],em[10];int ei=0;while(1){eout<<"请输入管理员用户名:";cin»cn;if(stremp(ha,en)){\n\n"; cout<<"输入错误!\n";ci++;if(ci==3)return;con ti nue;}else{cout<<"请输入密码:";cin> >cm;}if(!strcmp(hb,cm))break;else{cout<<"密码错误!\n";ci++;if(ci==3)return;con ti nue;}}//////////////////////////////////////////////// 主程序 int k;cout<<"请选择:"<<"\n\n\t <<"\n\n\t ◊ 1.停车操作◊" <<"\n\n\t ◊ 2.取车操作◊" <<"\n\n\t ◊ 3.查询信息◊" <<"\n\n\t ◊ 4.退出 ◊"<<"\n\n\t ◊◎◊◎◊◎◊◎◊◎◊◎◊◎◊◎ofstream outfile("车辆信息.txt",ios::app); if(! outfile){cerr<<"ope n error!"<<e ndl;exit(1);//ifstream infile("车辆信息.txt",ios::in);//if(! outfile)//{cerr<<"ope n error!"<<e ndl;//exit(1);}while(ci n> >k){if(k==1){i=juge();4:" \n\n";cout<<"\t 车牌号:"; cin> >cari n[i]. no; cari n[i].putcar(); cout<<"请选择:" <<"\n\n\t <<"\n\n\t ◊ 1.停车操作 ◊"<<"\n\n\t ◊ 2.取车操作 ◊"<<"\n\n\t ◊ 3.查询信息 ◊"<<"\n\n\t ◊ 4.退出 ◊"<<"\n\n\t ◊◎◊◎◊◎◊◎◊◎◊◎◊◎◊◎ \n\n";string timel;time_t t;time( &t);time1=ctime(&t);cout<<time1;//////////////////////////////////〃 导入系统时间outfile<<cari n[i]. no<<" "<<time1<<e ndl;///////// 保存车辆信息。
基于PLC控制的停车场车位系统设计第一章绪论1.1停车场的种类伴随着社会不断的进步与发展,人们日常的停车方式有了较大的变化,经历了一系列的变革。
按照停车位置的不同,可以将当前社会上的各个停车场进行具体的分类,主要有地上、地面、专用以及路边短暂停车等四种不同的类别,可以根据楼盘所处的位置,再将停车场进行更为具体的分类,有综合大楼专用车库与办公室用地专用地面车库,住宅区专用车库、运营专用车库以及大型城市公共建筑物停车场等。
1.2车库管理模式的发展车库管理模式展现出由人力掌控向智能控制的大趋势,传统意义的管理手段是纯手动操作方式,车辆的进出和泊车均为人力操作,收费也为人力操作,自动化程度较低。
现在,随着时间的推移人类文明的蓬勃发展,步入互联网年代,建筑得到了进一步的发展,步入智慧化建成年代,伴随着各项技术不断深入的发展与进步,尤其是半导体芯片的应用范围进一步的扩大,使整个智能停车的管理建设、信息化建设、自动化和智能化管理技术,费用逐渐减少,使安全基本要求不断提升。
所以,手动掌控车队已难以去适应这个时代的要求,需对停车场采取全自动、智能化管理和掌控。
具体措施包含车辆出入指引、自动泊车服务收费、智能车辆出入和移动控制系统、自动识别车辆出入和历史记录。
一些独特的停车塔(建筑物)处于更智能的水平。
车辆进入停车场,只需领到卡并在指定地点位置等待,自动传送装置自动完成传送、升降、着陆、计时及出仓过程。
整个车库设备智能化程度高,停车验收过程自动化程度高,停车空间再利用更高效。
与此同时,该类型的车辆停放需相关专业的施工规划建设,因而也需更高的停车场系统专业化程度。
1.3可编程控制器简介及发展趋势1.3.1PLC的起源与自动化工业控制相关的领域包括PLC、工业计算机和嵌入式控制。
PLC 自1968年成立以来,以惊人的速度成为相关领域的领导者,确保了各种自动控制手段的可靠应用。
主要是因为它能为自动控制应用场景提供更多安全的以及合理的实施方案,与工业园区当中的需求有着较高的匹配程度。
算法与数据结构课程设计题目:停车场管理专业班级:软件四班姓名:学号:指导教师:成绩:______________目录一、题目及要求 (2)二、题目分析 (3)三、数据结构说明 (4)四、各函数算法分析 (5)(1)主函数 (5)(2)车辆到达函数 (7)(3)车辆离开函数 (8)(4)列表显示函数 (10)五、程序测试 (14)(1)测试信息对错误的处理 (14)(2)列表显示 (15)(3)同时输出等待的提示作息 (16)(4)计算它们的应交费用 (17)六、课程设计感悟与收获 (18)七、源代码 (19)八、参考文献 (25)一、题目及要求[要求]设有一个可以停放n辆汽车的狭长停车场,它只有一个大门可以供车辆进出。
车辆按到达停车场时间的早晚依次从停车场最里面向大门口停放(最先到达的第一辆车放在停车场的最里面)。
如果停车场已放满n辆车,则后来的车辆只能在停车场大门外的便道上等待,一旦停车场内有车开走,则排在便道上的第一辆国就进入停车场。
停车场内如有某辆车要走,在它之后进来的车都必须退出停车场为它让路,待其开出停车场后,这些车辆再依原来的次序进场。
每辆车在离开停车场时,都应根据它在停车场内停留的时间长短交费。
如果停留在便道上的车未进停车场就要离去,允许其离去,不收停车费,并且其他在便道上等待的车辆的次序不变。
编制一程序模拟停车场管理。
[提示]汽车的模拟输入信息格式可以是:(到达/离去,汽车牌照号码,到达/离去时刻)。
例如:(’A’,1,5)表示1号牌照车在5这个时刻到达,而(’D’,5,20)表示5号牌照车在20这个时刻离去,整个程序可以在输入信息为(’E’,0,0)时结束。
基本要求:要求程序输出每辆车到达后的停车位置(停车场或便道上),以及某辆车离开停车场时应交的费用和它在停车场内停留的时间。
根据题目要求,停车场可以用一个长度为n的堆栈来模拟。
由于停车场内如有某辆车要开走,在它之后进来的车都必须先退出停车场为它让路,待其开出停车场后,这些车辆再依原来的次序进场。
融创智慧停车系统设计方案设计方案:融创智慧停车系统一、项目背景和目标随着城市化进程的加快,停车问题逐渐成为城市管理中的重要议题。
传统停车方式效率低下、资源浪费严重,因此设计一个智慧停车系统,旨在提高城市停车资源利用率,方便市民出行。
二、系统架构1. 前端:设计一个用户友好的移动端应用程序,包含地图、停车位查询、车辆导航、预约停车等功能。
用户通过该应用程序可以方便地查询周边停车位的空余情况,并进行相关操作。
2. 后端:系统后端主要包括数据管理、预约管理、导航管理以及与第三方停车场合作的接口等功能。
后端通过对各停车场停车位信息的实时管理,为用户提供准确的停车位信息。
3. 数据中心:负责存储和管理所有停车场和用户的数据,实现数据的安全性和可靠性。
三、系统功能1. 停车位查询:用户可以通过移动端应用程序查询周边停车场的空余停车位,并选择合适的停车场停车。
2. 预约停车:用户可以提前预约停车位,避免到达停车场后没有空余停车位的尴尬情况。
3. 车辆导航:用户可以通过移动端应用程序进行车辆导航,快速找到目的地停车场。
4. 计费管理:系统可以实时记录用户停车位的停车时间,并根据停车时长进行计费。
5. 系统管理:包括用户管理、停车场管理、停车位管理等功能,方便对系统进行维护和管理。
四、技术实现1. 地图定位技术:通过集成地图定位技术,实现用户所处位置和周边停车场的准确定位。
2. 数据可视化:通过数据可视化技术,将停车场的实时停车位信息以图表的形式展示给用户,便于用户查询和选择。
3. 数据管理技术:采用数据库管理系统,实现停车场和用户数据的安全存储和管理。
4. 接口技术:与第三方停车场合作,通过接口技术实现与第三方停车场的数据交互和合作。
五、系统实施步骤1. 前期准备:搜集和整理各停车场的基本信息和停车位分布信息,与第三方停车场进行合作洽谈。
2. 系统开发和测试:根据设计方案进行系统开发和测试,确保系统稳定性和功能完善。
某XXX酒店停车场系统设计方案前言随着社会的进步和发展,人们的生活方式发生着深刻的变化,城市的交通拥挤便是现象之一。
城市由于交通工具的增加造成的交通拥挤甚至混乱给人们的生活带来极大的不便,这种不便迫使人们去寻找高技术的有效手段去解决这种不便。
智能化的停车场即是顺应这一时代需求的高技术产物,这不仅可以有效地解决乱停乱放造成的交通混乱,而且可以促进交通设施的正规化建设,同时也尽可能地减少车主失车被盗的忧虑。
另外,在技术方面,其高技术性匹配于现有其它智能化系统,具有很好的开放性,易于与其它智能化系统组合成更强大的综合系统,顺应各种综合方式的高级管理。
第一章项目概述系统概述:停车场电脑收费管理系统是现代化停车场车辆收费及设备自动化管理的统称,是一个以非接触式ID卡为车辆出入停车场凭证、以车辆图像对比管理为核心的多媒体综合车辆收费管理系统。
该系统将先进的ID卡识别技术和高速的视频图像存储比较相结合,通过计算机的图像处理和自动识别,对车辆进出停车场的收费、保安和管理等进行全方位管理。
是将车场完全置于计算机管理下的高科技机电一体化产品。
在非接触式ID卡停车场管理系统中,持有月租卡或固定卡的车主在出入停车场时,经车辆检测器检测到车辆后,将ID卡在出入口控制箱的感应区掠过,读卡器读卡并判断卡的有效性,同时摄像机摄录该车的图像。
对于有效的ID卡,自动道闸的闸杆升起放行并将相应的数据存入数据库中。
若为无效的ID卡或进出场的车辆图像不同等异常情况时,则不给予放行。
对临时停车的车主,在车辆检测器检测到车辆后,按入口控制机上的按键取出一张ID卡,并完成读卡、摄像和放行。
在出场时,在出口控制机上读卡并交纳停车费用,同时进行车辆的图像对比,无异常情况时道闸升起放行。
同时停车场管理系统具有强大的数据处理功能,可以完成收费管理系统各种参数的设置、数据的收集和统计,可以对发卡系统发行的各种ID卡进行管理,对丢失的卡挂失,并能够打印有效的统计报表。
停车场管理系统程序设计书一、程序设计目标1、通过本次课设进一步的了解栈和队列等有关概念。
掌握栈和队列的建立,掌握栈和队列的基本操作,深入了解栈和队列的特性,以便在解决实际问题中灵活运用它们。
2、复习巩固C语言知识。
通过C语言课程设计,使我们了解高级程序设计语言的结构,掌握基本的程序设计过程和技巧,更加了解C语言的好处和其可用性。
进一步加深对C语言、数据结构、离散数学等基础技能的理解和掌握。
3、掌握基本的分析问题和利用计算机求解问题的能力,具备初步的高级语言程序设计能力。
为后续各门计算机课程的学习和毕业设计打下坚实基础。
4、掌握工程软件设计的基本方法,强化上机动手编程能力,闯过理论与实践相结合的难关!让我们有一个既动手又动脑,独立实践的机会,锻炼我们的分析解决实际问题的能力。
同时增加了同学之间的团队合作精神!更加体会到工作中团队合作的重要性和必要性!二、问题描述※按照题目要求,我们把程序分为三个模块a.车辆到达模块:设有一个可以停放n辆汽车的狭长停车场,它只有一个大门可以供车辆进出。
车辆按到达停车场时间的早晚依次从停车场最里面向大门口处停放(最先到达的第一辆车放在停车场的最里面)。
如果停车场已放满n辆车,则后来的车辆只能在停车场大门外的便道上等待。
b.车辆离开模块:一旦停车场内有车开走,则排在便道上的第一辆车就进入停车场。
停车场内如有某辆车要开走,在他之后进入停车场的车都必须先退出停车场为它让路,待其开出停车场后,这些车辆再依原来的次序进场。
每辆车在离开停车场时,都应依据它在停车场内停留的时间长短交费。
如果停留在便道上的车未进停车场就要离去,允许其离去,不收停车费,并且仍然保持在便道上等待的车辆的次序。
c.显示模块:当需要列表显示时,系统判断输入值(1-3),如果输入1,则调用显示车场列表,如果输入2,则调用显示便道信息,如果输入3,则返回主菜单。
三、需求分析这个程序的关键是车辆的进站和出站操作,以及车辆的通道之间的相互关系。
由于停车场是一个很窄的、一边开口的车道,先进后出,类似数据结构中的栈结构,故车场用顺序栈这种数据结构来描述。
外面的狭长的通道,先进后出,通道的车辆可以随时退出,故可用链式队列结构来描述。
考虑到车场和通道在整个程序中都要用到,故把这两个变量定义为全局变量。
本程序中的数据对象是汽车,可以认为车牌号是每个元素的关键项,不能重复,和现实中的一样,车的入场时间以及出场时间都将作收费项目来考虑。
在通道上的车由于没有入场,故不用收取费用。
※功能实现方式:(1).以栈S作为停车场,栈S1作为让路的临时停车点,队列Q作为车等待时用的便道,stack[Max+1]作为车场能够容纳的车辆数,num[10]作为车所在位置的编号,并且限定车场最多能够容纳10辆车.(2).用户根据系统所规定并提示的要求输入有关内容,车场所能容纳的车辆数由收费人员来确定,车辆离开时,车主还可以得到收据,便于收费的管理使用,并且系统程序所提供的一些信息可通过特殊硬件显示出来,供车主了解信息,准确有效的停车。
(3).程序能够显示当前存车信息以及等待车的信息,便于管理人员对车辆进行管理,并且能够给等待中的车提供当前车场占用情况信息,便于他们能够及时的停车。
(4).程序执行的命令为:输入进站信息->输入出站信息->打印收据(5).每组输入信息相应的输出信息为:如果是到达的车辆,则输出其在停车场中或便道上的位置;如果是离去的车辆,则输出其在停车场中停留的时间和应交的费用。
四、概要设计1.数据结构说明用到两个顺序栈:一个为车场栈;另一个为临时栈temptypedef struct Node{CarNode *stack[MAX+1];int top;}SeqStackCar;一个链式队列结构,存储便道车辆信息:typedef struct Node{QueueNode *head;QueueNode *rear;}LinkQueueCar;2.算法说明终端汽车读入数据包含三项:a.是“到达”还是“离开”;b.汽车牌照号码;c.“到达”或“离开”的时刻。
3.功能模块说明停车场管理系统含有三个模块,即:车辆到达、离开、列表显示以模块为单位分析算法a.车辆到达模块:到达时有两种情况,即车场是否满,未满则直b.车辆离开模块:离开时,当车库为空时,提示没有车,结束;否则车辆离开。
如图3。
c.显示模块:显示模块有两个显示选项,即:车场与便道。
如图4。
(图4)4、主要要点说明a.主程序Void main(){ 声明定义调用栈与队列的函数主信息(输入初始操作信息)}b.栈---实现栈抽象数据类型c.队列---实现队列抽象数据类型d.结构体---用于对对象及变量的管理它们之间的调用关系如下:主程序↓结构体↓栈↓队列五、详细设计(实现程序模块的具体算法)1.菜单选项应用switch分支循环对应的数字类别,执行相应的系统功能。
2.动画欢迎动画从屏幕下方上升,结束动画是从屏幕上方下落。
动画是由输出的图案叠加而成,输出一个图案便立刻清屏,接着输出下一时刻的图案,一次输出一次清屏便在人眼中形成动画效果。
开头动画结束动画3.停车场系统a、结构体声明与定义typedef struct time{int hour;int min;}Time; /*时间结点*/typedef struct node{char num[10];Time reach;Time leave;}CarNode; /*车辆信息结点*/typedef struct NODE{CarNode *stack[Max+1];int top;}SeqStackCar; /*模拟车站*/typedef struct car{CarNode *data;struct car *next;}QueueNode; /*队列信息结点*/typedef struct Node{QueueNode *head;}LinkQueueCar; /*模拟通道*/b、函数声明与定义(1)主函数void main(){//主程序//初始化等while(1){scanf(...................);//根据提示信息输入想要的操作switch(k){//根据输入的数调用不同的函数case 1:case 2:....................}}typedef struct **{//用于创建不同结构体类型的指针与变量}void PRINT(CarNode *p){//调用输出函数Leave(*p,n)...................根据求解时间值来求得费用,并通过收据打印出来}(2)功能函数的声明①void InitStack(SeqStackCar *,int n);初始化栈②int InitQueue(LinkQueueCar *);初始化队列③int Arrival(SeqStackCar *,LinkQueueCar *,int n);车辆到达,登车牌号,没停满进栈。
否则,进队列④void Leave(SeqStackCar *,SeqStackCar *,LinkQueueCar *);车辆离开,通过输入离开车辆的位置处理,然后调用PRINT (CarNode *p);函数进行收费,然后,判断便道上有没有车,如果有,就进停车场。
⑤void ExitCar(SeqStackCar *,SeqStackCar *,LinkQueueCar *,int n);车辆离开,通过输入车牌号而处理离开,然后调用PRINT(CarNode *p);函数进行收费,然后,判断便道上有没有车,如果有,就进停车场。
⑥void List(SeqStackCar,LinkQueueCar);显示信息,用switch();函数选择显示车场与便道上的车辆情况,包括对void List1(SeqStackCar *S);void List2(LinkQueueCar *W);分别为车场和便道上的车辆情况⑦void PRINT(CarNode *p)打印出站车的信息。
(3)库函数Stdio.h /*标准输入/输出头文件*/String.h /*包含字符串处理函数头文件*/Stdlib.h /*包含动态存储与释放函数头文件*/Malloc.h /*包含内存分配头文件*/4.主要函数思想本程序是个简单的栈与队列的应用程序,其所用的函数也是栈与队列的基本函数,但在编写函数时应特别注意它的面向对象性与窗口化设计,切身为使用者着想.所以在运用一些函数时调用的基本语句有太多的重复,其目的在于实现它本来的基本目的.六、软件说明书本系统为存车信息管理软件,能实现车场存车及便道存车信息的输入,输出,查找等功能,并建立和更新的存车费用信息保存于文件输出或打印。
每辆车的相关信息包括:车牌号,进站时间,出站时间,存车位置,(非)会员停车费用等。
该程序是简单的用于运用栈与队列基本知识的工具,不能用于现实中,特别是栈“先进后出”的规则大大限定了该程序的推广,现实世界的车站管理系统比这个远远复杂的多。
---------------------------------------------------------※进入演示系统后首先会出现欢迎动画,是一个用户及管理员使用注意事项界面。
该停车场管理系统是个比较简单系统,在应用的时候请注意要求!如果您有任何问题,请及时联系我们,谢谢合作!╭------╮╰-╮╭-╯..____.╭╮╭╮.___..╭╯╰-╯╰╮-╮.._..╭-┴┴★╮.._..|◢█◣◢█◣|||.._...│︵│.._..|██████|||.._...│◎│.._..|◥████◤|||..※※※╰○---○╯※※※..|◥██◤|╯╯...............................|◥◤|★∵∴☆★∵∴★∵∴☆★∵∴☆╰=============╯※进入注意事项界面后系统会提示你停车场所容纳的车辆数,输入可容纳车辆后(1-10),进入管理系统界面◆ * ★☆★☆欢迎使用本停车管理系统☆★☆★ * ◆*************************************************************** ※ --※ 1. 车辆到达※-- ※※ --※ 2. 车辆(位置 )离开※-- ※※ --※ 3. 车辆(车牌号)离开※-- ※※ --※ 4. 列表显示※-- ※※ --※ 5. 退出系统※-- ※****************************************************************本停车场管理实行24小时制*\n");*本停车场有会员服务,会员0.05/每分钟,非会员0.1/每分钟*请选择所需要的服务:1|2|3|4|5.※这时可按照提示进行你想要的操作,对于1-5的具体操作与内容请详见前面的调试分析,您便可以轻松操作了!!注意事项:1、注意按提示内容输入,以免出错。