ImageVerifierCode 换一换
格式:DOCX , 页数:26 ,大小:54.92KB ,
资源ID:24880631      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/24880631.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(停车场管理系统设计.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

停车场管理系统设计.docx

1、停车场管理系统设计面向对象程序设计(C+课程大作业设计题目:停车场管理系统设计院 系:计算机科学与信息工程学院专业班级:学号姓名:指导教师:一、 成员分工 1二、需求分析 2三、总体设计 3四、详细设计 6五、系统测试 17六、总结 20七、参考文献 21成员分工我们小组成员共有三名,分别是,为了能按时圆满的完成这次 VC+课程设计,我们小组进行了详细的分工, 以确保设计能按时完成。 经过周密的考虑和详细的调查最终确定该停车场管理系统需要以下几个功能模块:(1)需求分析(2)界面的设计(3)添加功能(4)显示功能(5)查询功能(6)编辑功能(7)删除功能(8)统计功能(9)保存功能(10)读取

2、功能经过小组成员的讨论,并根据个人的特长和具体爱好做如下具体分工神 1 具体完成以下模块的设计与实现:(1)需求分析(2)界面的设计(3)添加功能(4)保存功能神 2 具体完成以下模块的设计与实现:(1)显示功能(2)查询功能(3)显示功能神 3 主要具体完成以下模块的设计与实现:1) 编辑功能(2)删除功能(3)读取功能二需求分析1 .问题描述定义车辆类,属性有车牌号、颜色、车型(小汽车、小卡、中卡和大卡)、至U达的时间和离开的时 间等信息和相关的对属性做操作的行为。 定义一个管理类,完成对停车场的管理。停车场的具体要求:设停车场是一个可停放 n辆汽车的狭长通道,且只有一个大门可供汽车进出。

3、汽车在停车场内按车辆到达时间的先后顺序,依次由北向南排列(大门在最南端,最先到达的第一辆车停放在车 场的最北端),若车场内已停满 n辆汽车,则后来的汽车只能在门外的便道上等待,一旦有车开走,则排在便道上的第一辆车即可开入;每辆停放在车场的车在它离开停车场时必须按它停留的时间长 短交纳费用。2.基本要求(1) 添加功能:程序能够添加到达停车场的车辆信息, 要求车辆的车牌号要唯一, 如果添加了重复编号的记录时,则提示数据添加重复并取消添加。(2)查询功能:可根据车牌号、车型等信息对已添加的停车场中的车辆信息进行查询,如果未找到,给出相应的提示信息,如果找到,则显示相应的记录信息;(3) 显示功能:

4、可显示当前系统中所有车辆的信息,每条记录占据一行。 (4) 编辑功能:可根据查询结果对相应的记录进行修改,修改时注意车牌号的唯一性。(5 )删除功能:主要实现对已添加的车辆记录进行删除。如果当前系统中没有相 应的人员记录,贝U提示“记录为空!”并返回操作。(6)统计功能:能统计停车场中车辆的总数、按车型、按到达时间进行统计等。(7 )保存功能:可将当前系统中各类人员记录和休假记录存入文件中,存入方式 任意。(8)读取功能:可将保存在文件中的信息读入到当前系统中,供用户进行使用。3 .系统运行环境(1)硬件环境。联想 双核处理器,2G内存,2G独立显卡,80G硬盘。(2) 软件环境。 Micro

5、soft Visual C+,Wi ndosXP 系统。三 总体设计1) 设计思想本停车场 n 个车位 , 所以可以用数组表示, 每辆车用一结构体表示, 包括车牌号、 颜色、车 型、 车位号、停车时间和停车标志位(标志是否停车)。当车入库时,将更改信息,当车 出库时,将信息写入中。再次进入该系统时,还用这个该数组,来接受数据的读入,便于用 户以后的操作,防止停车信息的流失。此外,由于需要显示所有汽车的停车信息,所以我们 又加了一个顾客结构体,一个顾客链表,当存车时,新建用户节点,并使用头插法,插于链 表(便于取车时查到用户,补充完整用户的信息),填写用户的相关信息(车牌号,颜色, 车型,车位号

6、,车入库时刻)。当出库时,查找相应节点,补充完整用户信息,包括(用户 留言,停车时间总计,花费)。当退出系统后,将已出库的汽车的车主信息,写入历史文件 中, 便于管理员的查询。将还未取走车的车主的信息存入临时文件中,防止系统关闭后数据 信息的丢失,车主取车时找不到车。同时,还要将成员信息写入临时文件;2) 数据结构结构体 Car ,保存每个车位的停车信息。结构体 Gustomer ,保存每个客户的信息。结构体 User ,保存管理员信息。数组 Cars ,保存整个停车状况。数组 user;链表 CustList ,保存所有客户的信息,包括车已取走,和车未取走的。3) 程序模块( 1) 此停车场

7、管理系统,主要分为以下若干模块:首先定义用来模拟停车的数组,用来保存顾客信息的链表,保存管理员信息的结构以及全局 变量,然后编写主函数,在此主函数中实现对其它各个模块的调用。在主函数中首先调用 option() 函数,出现欢迎用户使用的界面,然后提示用户进入此停车场管理系统后,再出现 一个供用户选择的主界面(包括顾客界面和停车场管理员管理界面)。当用户选择顾客界面 时,跳入到顾客界面,再次界面,用户可以选择存车、取车及返回主页面。在用户的选择过 程中,程序又分别存车,取车函数调用以及退出程序这三个函数模块。其中,当存车时,调 用了显示空闲车位状态的信息函数,并调用了保存的函数;当取车时,调用显

8、示本次停车情 况以及消费金额的函数,并调用了保存的函数。建立存放管理人员的信息。最后,在主界面 选择“退出”,保存历史文件和临时文件。当用户选择车管系统时,调用管理员身份验证函 数,从而跳入车管界面,然后相应的功能函数,实现查询所有停车信息。(2)各模块之间的调用关系以及算法设计下图是个模块之间的调用关系:(3 )函数设计int UsertestAdd();void SaveUsers(User users6);void loa(User users6);void FourUserl n( User users6);void Load(Car cars6);void Showusers(Use

9、r users6);void loafile(User users6,char n ame10,char id10,char password10, intqin gjia,i nt empty);void Loadfile(Car cars6,char lice nse10,char pchex in g10,char pcolor2,i ntpnumber,int ptime,int empty);void FourCarI n(Car Cars6);void En terpark(Car cars6);void Showcars(Car cars6);void Savecars(Car

10、cars6);bool lsEmpty(Car cars6);void Prin t(char lice nse10,char pchex in g10,char pcolor2,i nt pnu mber,i nt ptime,float&cost);&ptime,float &cost,char note100);void CarOutMenu(char license,char pchexing,char pcolor,int &pnumber,int &ptime,float &cost,char note100);void Manage(Car cars6);void InitCus

11、tList(CustList *&cl);void CreateCustList(CustList *&cl,char *license,char *pchexing,char *pcolor);void GetDate(char tmp64);void SearchCust(CustList *&cl,char *license,char *pchexing,char *pcolor,float cost,intpcount);void Customer(Car cars6);void CustomerNote(char note100);void EachGuideInfor(Car c)

12、;四 详细设计 实现概要设计中定义的所有数据类型,对主要操作写出实现算法,对主程序和其他模块写出算法, 写出函数的调用关系。( 1) 数据类型结构体 Car ,保存每个车位的停车信息。struct Carchar license8;int pnumber;char pcolor2;char pchexing10; int ptime;int empty;mpty=1)carsi.ptime +=5;elsecarsi.pnumber =i+1;carsi.ptime=5;carsi.empty=1;strcpy(carsi.license,licen);return; icense,licen

13、se)=0)sign=0;floor=i;pnumber=j;ptime=carsij.ptime;if(sign)!endl;cout 您刚才输入的车牌号不存在 coutlicense;if(sign=0)cout 车已找到,请稍等。 endl; strcpy(note,0000000000);floor+=1;pnumber+=1;loor =0;carsfloor-1pnumber-1.pnumber =0;carsfloor-1pnumber-1.ptime=0;carsfloor-1pnumber-1.empty=0; strcpy(carsfloor-1pnumber-1.lice

14、nse, );3)添加管理员的信息到中void SaveUsers(User users6)FILE* fp = fopen(,wb);if(fp=NULL)coutCan not open this fileendl;return;User user;int j=0;while(j6)if(usersj.empty =1)strcpy ,usersj.name );strcpy ,usersj.id );strcpy ,usersj.password);=usersj.qingjia ;fwrite(&user,sizeof(user),1,fp);j+;fclose(fp);4)登录界面i

15、nt UsertestAdd()d,id)&!strcmp(UserArri.password,password)n=1;break;if(n) break;i=0;count+;cout 密码或账号错误, ;if(count=2|k=2)cout 您今天已累计输错 count 次-;endl;cout 您是否要注册用户(否则您将自动退出系统)coutendl;cout 输入数字 1 表示同意注册,其他则表示不同意条款 tip;if(tip=1)if(k=2)cout 很遗憾,系统管理员用户总数达到上限,无法注册,若需注册,请联系管理员endl;return 0;elsecout 请输入要注册

16、账号 id;strcpy(UserArrk+1.id ,id);cout 请输入您的姓名 name;strcpy(UserArrk+1.name ,name);cout 请输入您的密码 password;strcpy(UserArrk+1.password ,password);cout 注册成功,系统正在为您跳转到登陆界面 endl;int j=0;while(j00)j+;coutendl;+k;else return 0; coutendl;cout*endl;cout 欢迎进 UserArri.name 入停车场后台管理系统endl;cout*endl;coutendl;return

17、1;5)顾客界面void Customer(Car cars6)cout*停车场*endl;while(1)cout1 存车 endl;cout2 取车 endl;cout3 返回上一级 endl;couti;if(i3)cout 您的操作非法 !endl;continue;if(i=1|i=2)switch(i)case 1:system (cls);cout*停车场 *endl;Enterpark(cars);Savecars(cars);cout 退出( Y: 是,N: 不) endl;couta;Brea;case 2:system (cls);cout*停车场 *endl;int p

18、number,ptime;int pcount=0;float cost;char note100;coutlicenpchepcolo;Leavepark(cars,licen,pche,pcolo,pnumber,ptime,cost,note);CarOutMenu(licen,pche,pcolo,pnumber,ptime,cost,note);system (cls);number=0;carsj.ptime=0;carsj.empty=0;strcpy(carsj.license , );XQx59KjQQVlcpp Qc L -号叵一 C补甘呼H W 0七8 oG ? o廿堆l

19、s Jgyli:看理理-LC暫鎰显洞选r | T:、口并prXAdminitratnktcipDiFbutd.pyp据库通用模块及典型系统开发 M. 人民邮电出版社,2006.5陈刚.CSS标准网页布局开发指南M. 清华大学出版社,2007. 尹堃.浅谈技术的应用J.硅谷动力,2009,(07).7蔡义忠.在应用开发中验证码的设计 J.黄冈职业技术学院学报,2009,(01).8徐安凤,黄河涛.基于的文件上传研究J.福建电脑,2009,(03).9胡晓庆.多层架构在 WE醉序设计中的应用J.兵工自动化,2007,(03).10廖作斌,徐智.基于技术的数据库访问通用类设计 J.福建电脑,2006

20、,(11).11程宴,徐征.的网站新闻管理系统的设计与开发 J.舰船电子工程,2008,(08).附录:#include #include #include #include #include #define PNUMBER 6using namespace std;struct Carchar license10;char pchexing10;char pcolor2;int pnumber;int ptime;int empty;mpty=1)carsi.ptime +=5;elsecarsi.pnumber =i+1;carsi.ptime=5;carsi.empty=1;strcpy

21、(carsi.license,licen);return; icense,license)=0)sign=0;pnumber=j; ptime=carsj.ptime;if(sign)!endl;cout 您刚才输入的车牌号不存在coutlicense;if(sign=0)cout 车已找到,请稍等。 endl;pnumber+=1;number =0;carspnumber-1.ptime=0;carspnumber-1.empty=0;strcpy(carspnumber-1.license, );mpty=1) return false;return true;mpty =1)strcp

22、y ,carsj.license );=carsj.pnumber ;=carsj.ptime ;=carsj.empty ;mpty =1)strcpy ,usersj.name );strcpy ,usersj.id );strcpy ,usersj.password); =usersj.qingjia;icense,license); carspnumber-1.pnumber =pnumber;carspnumber-1.ptime =ptime;carspnumber-1.empty =empty;qingjia,intvoid loafile(User users6,char na

23、me10,char id10,char password10, int empty) strcpy(usersqingjia-1.name,name); strcpy(usersqingjia-1.id,id); strcpy(usersqingjia-1.password,password); usersqingjia-1.empty =empty;void Showcars(Car cars6)cout 现有汽车停车信息 endl;int j;(ios:left);cout 车牌号 ;(10);cout 车型 ;(2);cout 车色 ;(8);cout 车位号 ;(8);cout 停车时

24、间 endl; for(j=0;j6;j+)if(carsj.empty=1)(ios:left);(10);coutcarsj.license;(10);coutcarsj.pchexing;(2);coutcarsj.pcolor;(8); coutcarsj.pnumber;(8); coutcarsj.ptimeendl;void Showusers(User users6)int j;(ios:left);(10);cout 姓名 ;(10);cout 管理号 ;(2);cout 密码 ;(8);cout 请假次数 ;coutendl;for(j=0;j6;j+)if(usersj.

25、empty=1)(ios:left);(10);coutusersj.name;(10);coutusersj.id;(2);coutusersj.password;(8);coutusersj.qingjia; coutendl;int UsertestAdd()d,id)&!strcmp(UserArri.password,password)n=1;break;if(n)break;i=0;count+;cout 密码或账号错误, ;if(count=2|k=2)cout 您今天已累计输错 count 次 -;cout 您是否要注册用户(否则您将自动退出系统) endl;coutendl;cout 输入数字 1 表示同意注册,其他则表示不同意条款 tip;if(tip=1)if(k=2)cout 很遗憾,系统管理员用户总数达到上限,无法注册,若需注册,请联系管理员 endl;return 0;elsecout 请输入要注册账号 id;strcpy(UserArrk+1.id ,id); cout 请输入您的姓名 name;strcpy(UserArrk+1.name ,name); cout 请输入您的密码 password; strcpy(U

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

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