数据结构课程设计报告停车场管理系统

数据结构课程设计报告停车场管理系统
数据结构课程设计报告停车场管理系统

课程设计报告

课程名称数据结构课程设计

课题名称停车场管理系统

专业信息管理与信息系统

班级 09级1班

学号 200903110112

姓名洪俊斌

指导教师赵锦元、李峰、罗敬

2011年 1 月 9 日

湖南工程学院

课程设计任务书

课程名称数据结构

课题停车场管理系统

专业班级信息管理0901班

学生姓名洪俊斌

学号200903110112

指导老师赵锦元、李峰、罗敬

审批

任务书下达日期2011 年1 月 3 日任务完成日期2011 年1 月20 日

一、设计内容与设计要求

1.设计内容:

[问题描述] 设停车场只是一个可停放几辆汽车的狭长通道,且只有一个大门可供汽车进出,还有一个等停的的狭长通道。汽车在停车场内按车辆的先后顺序依次排列,若车站内已停满汽车,则后来的汽车只能在门外的通道上等停,一旦停车场内有车开走,则排在通道上的第一辆车即可进入;当停车场内某辆车要离开时,由于停车场是狭长的通道,在它之后开入的车辆必须先退出车站为它让路,待该车辆开出大门,为它让路的车辆再按原来次序进入车场。在这里假设汽车不能从便道上开走,试设计这样一个停车场模拟管理程序。

[基本功能]

(1)车辆成批入站。

当一个停车场刚开始投入运行的时候,会有很多车进来,因此,要设计一个函数来实现车辆批量进站。并要检测车辆的数目是否超过规定的最大容量,给出相关提示信息。

(2)单个车辆入站。

当系统正常投入运行后,会有零散的车辆进进出出,因此,设计一个函数实现单个车辆入站。

(3)车站内信息实时显示。

车站内信息包括两个部分:停车场内停放的车辆以及在外面通道上等停的车辆。

(4)车辆出站。

当停车场内车辆出站后,检查通道上是否有车等停,如果有,则要把排在最前面的车调入停车场内。

2.设计要求:

1).设计正确,方案合理。

2).界面友好,使用方便。

3).程序精炼,结构清晰。

4).设计报告5000字以上,含程序设计说明、系统的功能框图、流程图、源程序清单等。

5).实际操作过程中遇到的问题及解决方法:设计总结及心得体会。

6).上机演示。

二、进度安排

第 19 周星期一 8时:00分——11时:30分

星期二 8时:00分——11时:30分

星期三 14时:00分——17时:30分

星期四 14时:00分——17时:30分

星期五 8时:00分——11时:30分

第 20 周星期一 8时:00分——11时:30分

附:

课程设计报告装订顺序:封面、任务书、目录、正文、评分、附件(A4大小的图纸及程序清单)。

正文的格式:一级标题用3号黑体,二级标题用四号宋体加粗,正文用小四号宋体;行距为22。正文的内容:一、课题的主要功能;二、课题的功能模块的划分(要求画出模块图);三、主要功能的实现(至少要有一个主要模块的流程图);四、程序调试;五、总结;六、附件(所有程序的源代码,要求对程序写出必要的注释)。

正文总字数要求在5000字以上(不含程序源代码)。

目录

1 系统需求分析 (1)

1.1设计思想 (1)

1.2实现方法 (1)

2 总体设计 (2)

2.1总体设计图 (2)

2.2模块流程图 (3)

2.2.1:车辆成批入站 (3)

2.2.2:车站内信息显示 (4)

3 详细设计 (5)

3.1 采用结构体定义的相关数据类型 (5)

3.2 功能函数设计 (6)

4 系统测试及其结果 (11)

4.1 程序调试中的问题 (11)

4.2 结果截图 (13)

4.2.1:case1:车辆成批入站 (13)

4.2.2:case3:车辆出站 (15)

5 心得体会 (16)

6 附录 (18)

6.1源程序代码 (18)

6.2 参考文献 (24)

7 评分表 (25)

1 系统需求分析

1.1设计思想

此停车场管理系统是在一个狭长的通道上的,而且只有一个大门可以供车辆进出,并且要实现停车场内某辆车要离开时,在它之后进入停车场的车都必须先退出停车场为它让路,待其开出停车场后,这些辆再依原来的次序进场的功能,就可以设计两个堆栈,其中一个堆栈用来模拟停车场,另一个堆栈用来模拟临时停车场,该临时停车场用来存放当有车辆离开时,原来停车场内为其让路的车辆。至于当停车场已满时,需要停放车辆的通道可以用一个循环队列来实现。当停车场内开走一辆车时,通道上便有一辆车进入停车场,此时只需要改变通道上车辆结点的连接方式就可以了,使通道上第一辆车进入停车场这个堆栈,并且使通道上原来的第二辆车成为通道上的第一辆车,此时只需将模拟通道的循环队列的头结点连到原来的第二辆车上就可以了。

这个程序的关键是车辆的进站和出站操作,以及车场和通道之间的相互关系。由于车站是一个很窄的、一边开口的车道,先进后出,类似数据结构中的栈结构,故车场用栈这种数据结构来描述。外面的狭长的通道,先进先出,故可用队列结构来描述。考虑到车场和通道在整个程序中都要用到。故把这两个变量定义成全局变量。本程序中的数据对象是汽车,可以认为车牌号是每个元素的关键项,不能重复,和现实中一样,另外加了车主姓名这一数据项,为表简洁,其他相关信息如入场时间,车的类型,收取费率等,都不再考虑,具体应用的时候可以方便地修改得到。

1.2实现方法

对于此停车场管理系统的实现,就是用两个堆栈来分别模拟停车场以及停车场内车辆为其它车辆让路时退出停车的临时停放地点。至于通道上车辆的停放则用一个循环队列来实现,此时,通道上车辆的离开或者进入停车场只需改变此循环队列上的结点而已。

2 总体设计

2.1总体设计图

图2.1 功能模块图

运行程序到系统界面,接着系统界面就会出现让你能选择的功能: 【1】车辆成批入站 【2】单个车辆入站 【3】车辆出站

【4】车站内信息实时显示 【5】相关功能设定 【0】退出本系统

2.2模块流程图

2.2.1:车辆成批入站

图2.2车辆成批入站流程图

2.2.2:车站内信息显示

图2.3停车场内信息显示流程图

3 详细设计

3.1 采用结构体定义的相关数据类型

前面提到,要用到栈和队列的操作。这里,由于一个车场的最大容量是一定的,且车场最多执行的操作是插入和删除操作,所以用顺序储存结构可以带来更大益处。为了防止队列中出现“假溢出”现象,这里采用了循环队列。在模拟汽车这个对象时,进行了简化处理,只取得最核心的两个数据项:车牌号和车主姓名。具体数据结构定义如下:

首先定义maxsize为20:

#define maxsize 20

第二个再定义汽车的信息:车牌号num[10]和车主姓名name[10]:

typedef struct car{

char num[10];

char name[10];

}Car;

第三个定义汽车场的结构,在这里我把它看成是一个栈,在这里定义栈的容量等信息:

typedef struct {

Car data[maxsize];

int n;//栈容量设定

int top;

}Stack;//顺序栈用来存放汽车场内的车辆信息

第四个定义通道的结构,在这里我把它看成是一个循环队列,在这里定义队列胡容量等信息:

typedef struct {

Car data[maxsize];

int n;//队列容量设定

int num;//当前通道上的车辆数

int front,rear;

}Queue;//循环队列用来存放通道内的车辆信息

3.2 功能函数设计

(1)车辆成批入站void InitCarpark(void)//车辆成批入站

此函数也可以作为初始化车场的函数,因为一个车场刚开始投入运行的时候会有很多的车进来,这也是设计此函数最重要的一个原因。每行输入一个汽车信息,最后结束的时候输入“# #”即可。汽车信息中前面表示汽车的车牌号,后面表示车主姓名,中间用空格隔开。当输入汽车的数目超过规定的最大容量的时候(如果开始不设置最大容量,默认值为系统申请的最大值maxsize=20),自动检测条件,给出相关提示信息。程序如下:

void InitCarpark(void)//车辆成批入站

{ char num[8],*pnum,name[10],*pname;

Car pcar;

pnum=num;

pname=name;

printf("\n\n请输入车子的信息(包括车牌号和车主姓名(两者之间用空格隔开))(以'# #'这个符号结束):\n");

scanf("%s%s",pnum,pname);

while(strcmp(pnum,"#")!=0)

{ strcpy(pcar.num,pnum);

strcpy(https://www.360docs.net/doc/2a11754134.html,,pname);

if(Push(SCar,pcar)==-1)

{ printf("\n车站已满!车辆已经入通道!\n");

if(InsertQueue(QCar,pcar)==-1)

printf("\n通道已满,进入通道失败!!\n");

}

scanf("%s%s",pnum,pname);

}

printf("这批汽车已经成功进入停车场\n");

getch();

carmenu();

}

(2)单个车辆入站void InsertCar(void)//单个车辆入站

当系统正常投入运行后,会有零散的车辆进进出出,如还用成批输入方式的话,将会带来一定的麻烦。此函数具有函数InitCarpark()几乎所有的功能,程序跟InitCarpark()这个差不多,同样先输入,然后再判断停车场是否满了,通道是否满了,最后执行结果,程序如下:

void InsertCar(void)//单个车辆入站

{ char num[10],*pnum,name[10],*pname;

Car pcar;

pnum=num;

pname=name;

printf("\n\n请输入车子的信息(包括车牌号和车主姓名(两者之间用空格隔开)):\n");

scanf("%s%s",pnum,pname);

strcpy(pcar.num,pnum);

strcpy(https://www.360docs.net/doc/2a11754134.html,,pname);

if(Push(SCar,pcar)==-1)

{printf("\n车站已满!车辆已经入通道!\n");

if(InsertQueue(QCar,pcar)==-1)

printf("\n通道已满,进入通道失败!\n");

getch();

}

(3)车辆内信息显示函数void ShowCar(void)//车站内信息显示

如果车场本身是空的,没有汽车,那么也就不存在查看汽车信息了。故本函数一开始进行合理性检查,如果条件不成立,拒绝执行显示信息操作,给出出错的信息后返回到主界面。前面提到,车站内信息包括两部分:车场内停放的车辆,在外面通道上等停的车辆。因为通道上也不一定有车,程序输出车场内的所有汽车信息后,自动进行判断通道上是否有车辆。如果有车辆的话,继续输出停在通道上的车子信息。程序如下:

void ShowCar(void)//车站内信息显示

{ int i,front,rear;

if(SCar->top==-1)

{ printf("\n\n这停车场是空的!\n");getch();carmenu();} printf("\n\n目前停车场的车有:\n---车牌号-----------车主姓名\n");

for(i=0;itop+1;i++)

{ printf(" %-13s",SCar->data[i].num);

printf("%18s\n",SCar->data[i].name);}

if(QCar->rear!=QCar->front)//通道内有车辆

{front=QCar->front;rear=QCar->rear;

printf("\n通道信息:\n---车牌号--------------车主姓名\n");

while(front!=rear)

{ printf(" %-13s",QCar->data[front].num);

printf("%18s\n",QCar->data[front].name);

front=(front+1)%QCar->n;}

}

}

(4)车辆出站函数void ExitCar(void)//车辆出站

同上,首先进行和利息你给检查。这里的检查包括两个部分:车场非空且输入的车牌号在车场中。如果一切条件满足,则执行推车操作。最后,检查通道上是否有车辆等待。如果通道不为空,程序会自动把排在通道最前面的车调入车场内。其中,退车的算法过程如下:

①前面检测条件满足时,执行如下操作:由于车场很窄,当一辆车要出场时,

排在它后面的车辆需要先出场,等要退出的车开走后,刚才为它让道的那些车再按原次序进入车场。不难看出,这里需要创建一个临时栈,用于保存让道车辆的信息。

②在前面的合理性检查中,已经定位到出场车辆所在位置,从栈顶开始,到所

在位置前一个结束,车场内执行出栈操作,临时栈结构执行入栈操作。

③在当前位置执行出栈操作,即可实现指定的车辆出场。

④当临时栈不为空时,依次执行:临时栈退栈,车场内入栈。

(5)车站模拟系统相关功能设定函数void SetCar(void)//车站模拟系统相关功能设定

此函数很简单,首先用一个do-while循环,得到一个合理值,修改相关参数即可。这里有一个防错设计:当输入的最大容量小于车场内当前的车辆数时,拒绝

执行修改。程序如下:

void SetCar(void)//车站模拟系统相关功能设定

{ int b;

printf("选择1:修改停车场的容量\n");

printf("选择2:修改通道的容量\n");

printf("请你选择操作(1-2):\n");

scanf("%d",&b); /*读入选择*/

if(b==1)

{int n,flag=1;

printf("\n\n目前停车场最大的容纳量是:%d\n",SCar->n);

printf("\n输入您想要的停车场的最大容纳量:(<=%d)\n",maxsize);

do{ printf("请输入数值:");

scanf("%d",&n);

if(n>maxsize){printf("输入错误,请重新输入\n");}

if(ntop+1)

{ flag=0;

n=SCar->n;

break;

}

}while(n<0||n>maxsize);

SCar->n=n;

if(flag!=0) printf("\n修改成功!\n");

else

printf("\n错误!车站车辆已经超过此数!如要再输,请再按功能5\n");

getch();

carmenu();}

if(b==2)

{ int n,flag=1;

printf("\n\n目前通道最大的容纳量是:%d\n",QCar->n-1);

printf("\n请输入您想要的通道的最大容纳量:(<=%d)\n",maxsize);

do{ printf("请输入数值:");

scanf("%d",&n);

if(n>maxsize){printf("输入错误,请重新输入\n");}

if(nrear+1)

{ flag=0;

n=QCar->n;

break;

}

}while(n<0||n>maxsize);

QCar->n=n+1;

if(flag!=0) printf("\n修改成功!\n");

else

printf("\n错误!车站车辆已经超过此数!如要再输,请再按功能5\n");

getch();

carmenu();}}

(6)车站管理系统主菜单函数void carmenu(void)//车站管理系统主菜单此函数是用户与系统之间的一个窗口,用户通过它来选择相关操作。用printf 语句打印出供选择项目后,用不会显的getch()得到一个字符,用开关语句switch进行分类,判断用户想要执行的操作,然后执行相关功能函数即可。

(7)主函数void main(void)

为分别表示车场和通道的两个指针变量申请空间,分别调用相应的初始化函数,得到一个合理解,然后程序流向主供选菜单,供用户选择执行。

void main(void)

{if((SCar=(Stack *)malloc(sizeof(Stack)))==NULL)

{ printf("Failed!");exit(1);}

if((QCar=(Queue *)malloc(sizeof(Queue)))==NULL)

{printf("Failed!");exit(1);}

InitStack(SCar);InitQueue(QCar);

carmenu();exit(0);

}

4 系统测试及其结果

4.1 程序调试中的问题

调试过程中的主要问题

由于此停车场管理系统是分模块设计的,而且在程序的实现过程中又使用了清屏函数,所以,运行时用户选择任务并且执行完任务后,又会回到供用户选择功能的主界面,因此整个程序从整体上来讲结构清晰,使用方便。本程序的调试运行,总体上情况良好,但中间也出现了一些小问题。其中比较有代表性的主要问题有:

(1)当停车场已经达到最大容量,但仍有车辆进入停车场的时候,运行界面上没有出现或者说出现了但又跳掉了“车站已满!车辆已经入通道!”的提示信息。在查阅了多种资料后,在那一个printf语句后加了一个getch(),此时,程序运行结果就符合要求了,看起来也比较清晰了。

(2)使用getch()语句必须使用头文件#include

刚开始因为没有使用这个头文件,所以会出现getch()这个无法辨别

图4.1 错误报告1

(3)在对字符型的数据进行赋值的时候,要用strcpy,而不能直接用pcar.num=pnum这样的赋值形式,这样子会产生如下的错误:

图4.2 错误报告2

正确的形式应该是这样的:strcpy(pcar.num,pnum);

(4)同时,对字符型的数据进行比较的时候,也需要用strcmp。

不过我认为用while(pnum=="#")的形式也是可以的,我试验了一下,结果是可以的,所以不用strcmp这个东西也是可以的。

注意呀,那个#符号必须加””号,不加的话就有四个错误了:

图4.3 错误报告3

(5)把通道看成是一个队列,但在通道中的车辆数目总是少一辆,刚开始总是感觉疑问,明明就是设定maxsize为20的,通道内的车辆为什么就只有19辆呢,后来,我突然想到原来队列的Q->front是不存放数据的,终于找到了错误的地方了,所以我在定义数列的地方,把原来的Q->n=maxsize改成了Q->n=maxsize+1;结果是对的了。

(6)采用清屏的功能:system("cls"); /*运行前清屏*/

刚开始不知道有这个功能,在屏幕执行的时候,总感觉屏幕非常的复杂杂乱,感觉不是很舒服,后来问了同学一下,发现了这个功能,就马上加上了这个功能,屏幕就看起来比较清晰和舒服了。

(7)刚开始的时候,程序的健壮性不是很强,在主菜单函数中选择case多少时,如果不是规定的数字范围内的时候,它就会直接说按任意键返回。所以为了增强程序的健壮性,在最后加上default:ShowCar()这句话,在一开始运行程序的时候,由于此时停车场内信息没有输入,认为是空的,而当用户选择了退出车站的时候,程序将给出出错的信息“这停车场是空的”。

(8)在结构化程序设计中一般不主张使用goto语句,以免造成程序流程的混乱,使理解和调试程序都产生困难,所以尽量少用goto语句。因为在网上看到了这段话,所以我就把那个车站模拟系统相关功能设定这个模块改成用do-while语句的形式,其实我觉得do-while语句还是比较容易能实现的,而且程序也比较容易去检测出错误。

(9)对于通道的假定,原本是没有采用循环队列的,只是采用了比较基本简单的顺序存储队列,后来发现,这样子会发生“假溢出”的现象,所谓的“假溢出”顾名思义就是队列出现了“假满”的情况,而不是“真满”,比如设队头指针为front,队尾指针是rear,约定front指向队头元素的前一位置,rear指向队尾元素。当front等于-1时队空,rear等于m-1时为队满。由于队列的性质(“删除”在队头而“插入”在队尾),所以当队尾指针rear 等于m-1时,若front不等于-1,则队列中仍有空闲单元,所以队列并不是真满。这时若再有入队操作,会造成假“溢出”。

4.2 结果截图

4.2.1:case1:车辆成批入站

待主界面显示出来后,按1进入输入车辆的界面,然后输入你想输入的车辆信息,然后以“# #”号结束;在此之前,你还可以先设定车站和通道的容量;如下图:

1:先修改停车场与通道的容量,都改成2;

图4.4车辆成批入站结果截图(1)

图4.5车辆成批入站结果截图(2)

2:成批输入三辆汽车的信息,因为停车场内只能停两辆汽车,所以第三辆车要停放在通道上等停,一旦停车场内有汽车开走,通道上的车辆即可进入;

图4.6车辆成批入站结果截图(3)

3:待返回主界面后,按4,即会显示出车站内与通道上的车辆信息;

图4.7车辆成批入站结果截图(4)

4.2.2:case3:车辆出站

1:输入想要出站的汽车牌号,然后汽车出站,接着通道上的第一辆汽车进入停车场;

图4.8车辆出结果截图(1)

2:通道内的车已经进入停车场,如下图:

图4.9车辆出结果截图(2)

数据结构课程设计报告模板

《数据结构I》三级项目报告 大连东软信息学院 电子工程系 ××××年××月

三级项目报告注意事项 1. 按照项目要求书写项目报告,条理清晰,数据准确; 2. 项目报告严禁抄袭,如发现抄袭的情况,则抄袭者与被抄袭者均 以0分计; 3. 课程结束后报告上交教师,并进行考核与存档。 三级项目报告格式规范 1. 正文:宋体,小四号,首行缩进2字符,1.5倍行距,段前段后 各0行; 2. 图表:居中,图名用五号字,中文用宋体,英文用“Times New Roman”,位于图表下方,须全文统一。

目录 一项目设计方案 (3) 二项目设计分析 (4) 三项目设计成果 (4) 四项目创新创业 (5) 五项目展望 (6) 附录一:项目成员 (6) 附录二:相关代码、电路图等 (6)

一项目设计方案 1、项目名称: 垃圾回收 2、项目要求及系统基本功能: 1)利用数据结构的知识独立完成一个应用系统设计 2)程序正常运行,能够实现基本的数据增加、删除、修改、查询等功能3)体现程序实现算法复杂度优化 4)体现程序的健壮性 二项目设计分析 1、系统预期实现基本功能: (结合本系统预期具体实现,描述出对应基本要求(增、删、改、查等)的具体功能) 1. 2. 3. 4. 5. 6. 7. 2、项目模块功能描述 (基本分为组织实施组织、程序功能模块编写、系统说明撰写等。其中程序功能子模块实现) 模块一: 主要任务:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX 模块二: 主要任务:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX 模块n: 主要任务:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

数据结构c语言版课程设计报告停车场管理系统

课程设计:停车场 c语言版本的数据结构课程设计,要求用栈模拟停车场,用队列模拟便道,实现停车场的收费管理系统

停车场停满车后车会停在便道上面 下面附上源码,vc:(下编译 #include //#include //malloc #include //获取系统时间所用函数#include //getch() #include //设置光标信息mallco

#define MaxSize 5 /*定义停车场栈长度*/ #define PRICE 0.05 /*每车每分钟收费值*/ #define BASEPRICE 0.5 //基础停车费 #define Esc 27 //退出系统 #define Exit 3 //结束对话 #define Stop 1 //停车 #define Drive 2 //取车 int jx=0,jy=32; //全局变量日志打印位置 typedef struct {int hour; int minute; }Time,*PTime; /*时间结点*/ typedef struct /*定义栈元素的类型即车辆信息结点*/ {int num ; /*车牌号*/ Time arrtime; /*到达时刻或离区时刻*/ }CarNode; typedef struct /*定义栈,模拟停车场*/ {CarNode stack[MaxSize]; int top; }SqStackCar; typedef struct node /*定义队列结点的类型*/ {int num; /*车牌号*/ struct node *next; }QueueNode; typedef struct /*定义队列,模拟便道*/ {QueueNode *front,*rear; }LinkQueueCar;

停车场管理系统设计

面向对象程序设计(C++课程大作业 设计题目:停车场管理系统设计 院系:计算机科学与信息工程学院专业班级: 学号姓名: 指导教师:

目录 一、成员分工 (1) 二、需求分析 (2) 三、总体设计 (3) 四、详细设计 (6) 五、系统测试 (17) 六、总结 (20) 七、参考文献 (21)

成员分工 我们小组成员共有三名,分别是,为了能按时圆满的完成这次 VC++课程设计,我们小组进行了详细的分工,以确保设计能按时完成。经过周密的考虑和详细的调查最终确定该停车场管理系统需要以下 几个功能模块: (1)需求分析 (2)界面的设计 (3)添加功能 (4)显示功能 (5)查询功能 (6)编辑功能 (7)删除功能 (8)统计功能 (9)保存功能 (10)读取功能 经过小组成员的讨论,并根据个人的特长和具体爱好做如下具体分工 神 1 具体完成以下模块的设计与实现: (1 )需求分析 (2 )界面的设计 (3 )添加功能 保存功能 (4 ) 神 2 具体完成以下模块的设计与实现: (1)显示功能 (2)查询功能 显示功能 (3) 神 3 主要具体完成以下模块的设计与实现: (1)编辑功能 (2)删除功能 (3)读取功能

二需求分析 1. 问题描述 定义车辆类,属性有车牌号、颜色、车型(小汽车、小卡、中卡和大卡)、至U达的时间和离开的时间等信息和相关的对属性做操作的行为。定义一个管理类,完成对停车场的管理。停车场的具体 要求:设停车场是一个可停放n辆汽车的狭长通道,且只有一个大门可供汽车进出。汽车在停车场 内按车辆到达时间的先后顺序,依次由北向南排列(大门在最南端,最先到达的第一辆车停放在车场的最北端),若车场内已停满n辆汽车,则后来的汽车只能在门外的便道上等待,一旦有车开走, 则排在便道上的第一辆车即可开入;每辆停放在车场的车在它离开停车场时必须按它停留的时间长短交纳费用。 2. 基本要求 (1)添加功能:程序能够添加到达停车场的车辆信息,要求车辆的车牌号要唯一, 如果添加了重复编号的记录时,则提示数据添加重复并取消添加。 (2)查询功能:可根据车牌号、车型等信息对已添加的停车场中的车辆信息进行查询,如果未找到,给出相应的提示信息,如果找到,则显示相应的记录信息; (3)显 示功能:可显示当前系统中所有车辆的信息,每条记录占据一行。(4) 编辑功能:可根据查询结果对相应的记录进行修改,修改时注意车牌号的唯一性。 (5 )删除功能:主要实现对已添加的车辆记录进行删除。如果当前系统中没有相应的人员记录,贝U提示“记录为空!”并返回操作。 (6)统计功能:能统计停车场中车辆的总数、按车型、按到达时间进行统计等。 (7 )保存功能:可将当前系统中各类人员记录和休假记录存入文件中,存入方式任意。 (8)读取功能:可将保存在文件中的信息读入到当前系统中,供用户进行使用。 3 .系统运行环境 (1)硬件环境。联想双核处理器, 2G内存,2G独立显卡,80G硬盘。 (2) 软件环境。Microsoft Visual C++6 ?0,WindosXP 系统。

收费停车场管理系统数据库设计

东方学院 实验(实训)报告 项目名称收费停车场管理系统 所属课程名称数据库原理及应用 项目类型设计、综合型 实验(实训)日期 班级 09信息2班 学号0920400204,0920400211姓名曹欢欢林婉怡 指导教师严素蓉

目录 1. 需求分析 (4) 1.1引言 (4) 1.2任务 (4) 1.2.1需求分析阶段的目标 (4) 1.2.2具体任务 (4) 1.2.3 结果 (5) 2. 概念设计 (11) 2.1目标 (11) 2.2设计过程 (11) 2.3阶段成果 (11) 3. 逻辑设计 (12) 3.1目标 (12) 3.2任务与结果 (12) 3.2.1数据组织 (12) 图9.系统功能模块图 (15) 4. 物理设计 (16) 4.1目标 (16) 4.2任务 (16) 4.2.1数据存取方面 (16) 4.2.2功能模块图 (16) 4.3结果 (18) 4.3.1 存储过程 (18) 4.3.2 触发器 (18) 5. 数据库实施阶段 (19) 5.1目标 (19) 5.2任务与结果 (19) 5.2.1建立数据库 (19) 6. 数据库调试与测试 (20)

1.需求分析 1.1引言 需求分析是设计数据库的起点,需求分析的结果是否准确地反映了用户的实际要求,将直接影响到后面各个阶段的设计,并影响到设计结果是否合理和实用。 目前停车场的管理方式比较落后,已经不能适应现代社会的实际需求,本系统的开发能给管理上带来新鲜的活力,提高管理的效率,具有较高的实用性和开发价值。 1.2任务

1.2.1需求分析阶段的目标 通过调查了解分析停车管理的现状,弄清用户对开发的数据库应用系统的确切要求,以及停车场管理的流程,系统的具体功能和数据库中数据信息。 1.2.2具体任务 (1)处理对象 系统处理的对象包括车辆信息、固定车位信息、自由车位信息、停车车辆信息以及收费记录等五个方面。即 固定车位信息:车位编号、车位位置、车牌号码、车主姓名、车辆品牌、车辆颜色、车辆照片、联系地址、联系方式、车位余额; 自由车位信息:车位编号、车位位置; 车辆信息:车牌号码、车辆品牌、车辆颜色; 停车信息:车位编号、车牌号码、进入时间、离开时间、时间段、车位类型、在位情况、收费费率; 收费记录:车位编号、车牌号码、停车时间、停车费用、发票编号。 (2)处理功能要求 整个系统具体包括三个子系统,分别为:停车处理子系统、车位综合管理子系统以及收费子系统。 处理的功能包括:车辆信息的查询以及更新;空闲车位信息的查询;固定车位信息的查询;进出车辆记录的更新和收费信息的查询与更新等。 (3)安全性与完整性要求 安全性可以通过视图机制来完成,对不同用户设置不同权限,不同的用户只能访问授权的视图,这样可以提高一定的程度的安全性。还可以通过存取控制机制:即定义用户权限,并将用户权限登记到数据字典中以及合法的权限检查来保障安全性。 完整性可以通过声明完整性,即在定义表时声明数据完整性和过程完整性,在服务器端编写触发器来实现。 1.2.3 结果 (1)体会和收获 通过对现在的停车场管理状况的调查,发现停车场管理缺少合适的管理系统,并了解了一下管理的大致流程。与此同时通过网络搜索查找现行的停车场管理系统,根据这两者综合来进行需求分析。调查时需要较强的信息捕捉能力以及事后的总结与思考,同时学会用网络较快较准确地搜索到需要的资料是很关键的。

数据结构课程设计报告

《数据结构与算法》课程设计报告 学号: 班级序号: 姓名: 指导教师: 成绩: 中国地质大学信息工程学院地理信息系统系 2011年12 月

1.需求规格说明 【问题描述】 利用哈夫曼编码进行对已有文件进行重新编码可以大大提高减小文件大小,减少存储空间。但是,这要求在首先对一个现有文件进行编码行成新的文件,也就是压缩。在文件使用时,再对压缩文件进行解压缩,也就是译码,复原原有文件。试为完成此功能,写一个压缩/解压缩软件。 【基本要求】 一个完整的系统应具有以下功能: (1)压缩准备。读取指定被压缩文件,对文件进行分析,建立哈夫曼树,并给出分析结果(包括数据集大小,每个数据的权值,压缩前后文件的大小),在屏幕上输出。 (2)压缩。利用已建好的哈夫曼树,对文件进行编码,并将哈夫曼编码及文件编码后的数据一起写入文件中,形成压缩文件(*.Haf)。 (3)解压缩。打开已有压缩文件(*.Haf),读取其中的哈夫曼编码,构建哈夫曼树,读取其中的数据,进行译码后,写入文件,完成解压缩。 (4)程序使用命令行方式运行 压缩命令:SZip A Test.Haf 1.doc 解压缩命令:SZip X Test.Haf 2.doc或SZip X Test.Haf 用户输入的命令不正确时,给出提示。 (5)使用面向对象的思想编程,压缩/解压缩、哈夫曼构建功能分别构建类实现。 2.总体分析与设计 (1)设计思想: 1、压缩准备:1> 读文件,逐个读取字符,统计频率 2> 建立哈夫曼树 3> 获得哈弗曼编码 2、压缩过程: 1> 建立一个新文件,将储存权值和字符的对象数组取存储在文件头

停车场管理系统设计报告

数字频率计 班级:XXX班指导老师:XXX XXX 学生:A b C 学号:A B C 一内容提要: 停车场车位管理系统是用显示于车位空余数的管理系统.它的基本功能是显示车 位数,置数,清零,一键置最大泊车位数及显示器数字保持,报警。本文粗略讲 述了我在本次实习中的整个设计过程及收获。 讲述了停车场车位管理系统的工作原理以及其各个组成部分,记述了我在整 个设计过程中对各个部分的设计思路、对各部分电路设计方案的选择、元器件的 筛选、以及对它们的调试、对调试结果的分析,到最后得到比较满意的实验结果 的方方面面。 二设计内容及要求: 主要要求及指标: 1.设一个强制清空键。清空后, 显示停车场最大泊车位数(如40) 。设两个手动调 整键(个位,十位), 方便调整现场实际空余泊车位数,此键应去抖动。两位 LED显示. 2.设计一个方向识别电路供加/减计数器使用,进车后空余的泊车位数目减1, 出 车后空余的泊车位数目加1 。 3.当无空位时应将无空位告警提示灯点亮,此时若有车强行进入,无空位状态要 保持不变, 若有出车自动解除无空位状态。 4.(*) 设计两个红外线光发射/接收传感器电路供方向识别电路使用,传感器的输 出信号需整形处理。 三设计思路及原理: 停车场车位管理系统由四部分组成:显示器,计数器,加减脉冲发生器。 重点介绍小功能器,即包括置数,清零,一键置最大,保持,报警等功能的电路置数采用单脉冲置数

四:设计分析 包括了时基电路,光电门,出、入埠信号生成,信号判断,计数器和显示部分。 1. 时基电路 时基电路采用1kHz 自动脉冲或者也可以用555定时器多谐振荡器输出1kHz 的脉冲。考虑到整体电路的出错率与系统的耦合程度有很大关联,故采用实验电路箱的自动脉冲以确保整体电路稳定性。 但是,毕竟是课程设计实验,故一并附上555定时器组成的时基电路图,及OSC 监视图 被测信号 计数器 译码器 逻辑控制电路 显示器 时基电路 光电门 出、入埠信号生成 555_VIRTUAL Timer GND DIS OUT RST VCC THR CON TRI 101kΩR1 21.65kΩ R2 100ΩRl 10nF C 10nF Cf 12V Vs

数据结构实验总结报告

数据结构实验总结报告 一、调试过程中遇到哪些问题? (1)在二叉树的调试中,从广义表生成二叉树的模块花了较多时间调试。 由于一开始设计的广义表的字符串表示没有思考清晰,处理只有一个孩子的节点时发生了混乱。调试之初不以为是设计的问题,从而在代码上花了不少时间调试。 目前的设计是: Tree = Identifier(Node,Node) Node = Identifier | () | Tree Identifier = ASCII Character 例子:a(b((),f),c(d,e)) 这样便消除了歧义,保证只有一个孩子的节点和叶节点的处理中不存在问题。 (2)Huffman树的调试花了较长时间。Huffman编码本身并不难处理,麻烦的是输入输出。①Huffman编码后的文件是按位存储的,因此需要位运算。 ②文件结尾要刷新缓冲区,这里容易引发边界错误。 在实际编程时,首先编写了屏幕输入输出(用0、1表示二进制位)的版本,然后再加入二进制文件的读写模块。主要调试时间在后者。 二、要让演示版压缩程序具有实用性,哪些地方有待改进? (1)压缩文件的最后一字节问题。 压缩文件的最后一字节不一定对齐到字节边界,因此可能有几个多余的0,而这些多余的0可能恰好构成一个Huffman编码。解码程序无法获知这个编码是否属于源文件的一部分。因此有的文件解压后末尾可能出现一个多余的字节。 解决方案: ①在压缩文件头部写入源文件的总长度(字节数)。需要四个字节来存储这个信息(假定文件长度不超过4GB)。 ②增加第257个字符(在一个字节的0~255之外)用于EOF。对于较长的文件,

会造成较大的损耗。 ③在压缩文件头写入源文件的总长度%256的值,需要一个字节。由于最后一个字节存在或不存在会影响文件总长%256的值,因此可以根据这个值判断整个压缩文件的最后一字节末尾的0是否在源文件中存在。 (2)压缩程序的效率问题。 在编写压缩解压程序时 ①编写了屏幕输入输出的版本 ②将输入输出语句用位运算封装成一次一个字节的文件输入输出版本 ③为提高输入输出效率,减少系统调用次数,增加了8KB的输入输出缓存窗口 这样一来,每写一位二进制位,就要在内部进行两次函数调用。如果将这些代码合并起来,再针对位运算进行一些优化,显然不利于代码的可读性,但对程序的执行速度将有一定提高。 (3)程序界面更加人性化。 Huffman Tree Demo (C) 2011-12-16 boj Usage: huffman [-c file] [-u file] output_file -c Compress file. e.g. huffman -c test.txt test.huff -u Uncompress file. e.g. huffman -u test.huff test.txt 目前的程序提示如上所示。如果要求实用性,可以考虑加入其他人性化的功能。 三、调研常用的压缩算法,对这些算法进行比较分析 (一)无损压缩算法 ①RLE RLE又叫Run Length Encoding,是一个针对无损压缩的非常简单的算法。它用重复字节和重复的次数来简单描述来代替重复的字节。尽管简单并且对于通常的压缩非常低效,但它有的时候却非常有用(例如,JPEG就使用它)。 变体1:重复次数+字符 文本字符串:A A A B B B C C C C D D D D,编码后得到:3 A 3 B 4 C 4 D。

数据结构课程设计报告模板

课程设计说明书 课程名称:数据结构 专业:班级: 姓名:学号: 指导教师:成绩: 完成日期:年月日

任务书 题目:黑白棋系统 设计内容及要求: 1.课程设计任务内容 通过玩家与电脑双方的交替下棋,在一个8行8列的方格中,进行棋子的相互交替翻转。反复循环下棋,最后让双方的棋子填满整个方格。再根据循环遍历方格程序,判断玩家与电脑双方的棋子数。进行大小判断,最红给出胜负的一方。并根据y/n选项,判断是否要进行下一局的游戏。 2.课程设计要求 实现黑白两色棋子的对峙 开发环境:vc++6.0 实现目标: (1)熟悉的运用c语言程序编写代码。 (2)能够理清整个程序的运行过程并绘画流程图 (3)了解如何定义局部变量和整体变量; (4)学会上机调试程序,发现问题,并解决 (5)学习使用C++程序来了解游戏原理。 (6)学习用文档书写程序说明

摘要 本文的研究工作在于利用计算机模拟人脑进行下黑白棋,计算机下棋是人工智能领域中的一个研究热点,多年以来,随着计算机技术和人工智能技术的不断发展,计算机下棋的水平得到了长足的进步 该程序的最终胜负是由棋盘上岗双方的棋子的个数来判断的,多的一方为胜,少的一方为负。所以该程序主要运用的战术有削弱对手行动战术、四角优先战术、在游戏开局和中局时,程序采用削弱对手行动力战术,即尽量减少对手能够落子的位置;在游戏终局时则采用最大贪吃战术,即尽可能多的吃掉对手的棋子;而四角优先战术则是贯穿游戏的始终,棋盘的四角围稳定角,不会被对手吃掉,所以这里是兵家的必争之地,在阻止对手进角的同时,自己却又要努力的进角。 关键词:黑白棋;编程;设计

停车场管理系统 C语言实习报告

C 语 言 课 程 实 习 报 告 【要求】 设有一个可以停放n辆汽车的狭长停车场,它只有一个大门可以供车辆进出。车辆按到达停车场时间的早晚依次从停车场最里面向大门口停放(最先到达的第一辆车放在停车场的最里面)。如果停车场已放满n辆车,则后来的车辆只能在停车场大门外的便道上等待,一旦停车场内有车开走,则排在便道上的第一辆车就进入停车场。停车场内如有某辆车要开走,在它之后进来的车都必须先退出停车场为它让路,待其开出停车场后,这些车辆再依原来的次序进场。每辆车在离开停车场时,都应依据它在停车场内停留的时间长短交费。如果停留在便道上的车未进停车场就要离去,允许其离去,不收停车费,并且仍然保持在便道上等待的车辆的次序。编制一程序模拟停车场管理。 【提示】 汽车的模拟输入信息格式可以是:(到达/离去,汽车牌照号码,到达/离去的时刻)。 基本要求:要求程序输出每辆车到达后的停车位置(停车场或便道上),以及某

辆车离开停车场时应交纳的费用和它在停车场内停留的时间。 根据题目要求,停车场可以用一个长度为n 的堆栈来模拟。由于停车场内如有某辆车要开走,在它之后进来的车辆都必须先退出停车场为它让路,待其开出停车场后,这些车辆再依原来的次序进场,所以可以设两个堆栈。 一、需求分析 根据题目要求,程序应该提供“到达/离去,汽车牌照号码,到达/离去”的输入、输出操作;在程序中需要浏览停车场的车位信息,应提供显示、查找、排序等操作;此外还应提供键盘式菜单实现功能选择。 二、总体设计: 根据需求分析,可以将系统的设计分为以下五大模块:(1)车辆进入;(2)车辆退出; (3)车辆等待;(4)车辆查询;(5)退出。 一、详细设计: 主函数中只包含菜单函数,菜单部分单独写成函数,只提供输入、功能处理和输出部分的函数调用,其中各功能模块用菜单方式选择。 [程序] #define N 30 /*等待车辆*/ #define M 20 /*车位*/ #define P 2 /*单位时间所收费用*/ #include #include #include struct cars /*定义车辆信息*/ { char state; int num; int in_time; 停车场 管理系统 车辆进入 车辆退出 车辆等待 车辆信息 显示 车辆查询 退出系统

基于WEB的停车场管理系统设计和实现

2009 届毕业论文(设计) 论文(设计)题目基于WEB的停车场管理系统的 设计和实现 院系名称计算机科学与技术系 专业(班级)计算机科学与技术 2005级本科1班 (学号)段景辉(0510101005) 指导教师正茂 系负责人袁暋 二O O九年五月三十日

摘要 随着现代社会的快速发展,人民生活水平快速提高,汽车的数量飞速增加,与此同时停车问题也越来越受到人们的关注,为了实现对停车场进行有效的管理,结合一些停车场的模式和现状开发出本停车场管理系统。 停车场管理系统是典型的信息管理系统,本停车场管理系统设计的主要功能包括场内车辆管理和后台数据库管理,其中场内车辆管理又分为出入场管理模块、收费模块、用户管理模块、停车场参数、停车场数据管理模块、系统管理模块等。我们从系统的设计和功能实现方面阐述了管理系统软件的开发过程。 系统采用了B/S架构,Tomcat6.0作为运行服务器,基于J2EE标准、JSP技术利用Hibernate3.1和Struts1.2框架作为开发工具,MyEclipse6.0开发环境,数据库采用Microsoft SQL Server 2000。开发过程利用MVC开发模式,层次分明。成功实现了该系统。试运行结果表明,该系统具有良好的性能和扩展性,较高的响应速度和效率,该系统符合实际的停车场管理系统,为停车场管理供一个快速,简单规范的管理平台。这对提高信息化程度,降低人力成本有着重要的意义。 关键词:停车场管理系统,J2EE,Hibernate3.1,Struts1.2

Abstract With the rapid development of modern society, people's living standards improve and the number of vehicles increases rapidly. People pay more attention to parking problems at the same time. In order to manage the parking lots more efficiently, we have developed a Parking Management System, with some modes and the actuality of present parking lots considered. Parking Management System is typically one of the information management systems. The main functions in the Parking Management System include vehicle management and background database management, and vehicle management is divided into the passing in and out module, the charging module, the user management module, the parking parameters,parking data management module, and the system management module. We discussed the management systems development process from the system design and function of the realization in the Papers. T omcat6.0 as a running server is used in this system on the basis of B/S structure. Based on J2EE standards, JSP technology as development tools which is taken advantage of Hibernate3.1 and Struts1.2 framework and MyEclipse6.0 as development environment are applied in the system. Microsoft SQL Server 2000 is used as background database. We develop the use of MVC pattern in development process. T est results show that the system has good performance and scalability, high response speed and efficiency which is in line with the actual park management system and can provide a fast, simple and standardized management platform. It is important to improve the information level and reduce labor costs. Key words: p arking management system,J2EE, Hibernate3.x, Struts1.2

数据结构课程设计报告

编号 课程设计 题目 1、一元稀疏多项式计算器 2、模拟浏览器操作程序 3、背包问题的求解 4、八皇后问题 二级学院计算机科学与工程学院 专业计算机科学与技术 班级 2011级 37-3班 学生姓名 XX 学号 XXXXXXXXXX 指导教师 XXXXX 评阅教师 时间 1、一元稀疏多项式计算器 【实验内容】 一元稀疏多项式计算器。

【问题描述】 设计一个一元稀疏多项式简单计算器。 【需求分析】 其基本功能包括: (1)输入并建立多项式; (2)输出多项式,输出形式为整数序列为:n,c1,e1,c2,e2,……,cn,en,其中n 是多项式的项数,ci,ei分别是第i项的系数和指数,序列按指数降序排序;(3)多项式a和b相减,建立多项a+b; (4)多项式a和b相减,建立多项式a-b; (5)计算多项式在x处的值; (6)计算器的仿真界面(选做); 【概要设计】 -=ADT=- { void input(Jd *ha,Jd *hb); void sort(dnode *h)

dnode *operate(dnode *a,dnode *b) float qiuzhi(int x,dnode *h) f",sum); printf("\n"); } 【运行结果及分析】 (1)输入多项式:

(2)输出多项式(多项式格式为:c1x^e1+c2x^e2+…+cnx^en): (3)实现多项式a和b相加: (4)实现多项式a和b相减: (5)计算多项式在x处的值:

2、模拟浏览器操作程序 【实验内容】 模拟浏览器操作程序 【问题描述】 标准Web浏览器具有在最近访问的网页间后退和前进的功能。实现这些功能的一个方法是:使用两个栈,追踪可以后退和前进而能够到达的网页。在本题中,要求模拟实现这一功能。 【需求分析】 需要支持以下指令: BACK:将当前页推到“前进栈”的顶部。取出“后退栈”中顶端的页面,使它成为当前页。若“后退栈”是空的,忽略该命令。 FORWARD:将当前页推到“后退栈”的顶部。取出“前进栈”中顶部的页面,使它成为当前页。如果“前进栈”是空的,忽略该命令。 VISIT:将当前页推到“后退栈”的顶部。使URL特指当前页。清空“前进栈”。 QUIT:退出浏览器。 假设浏览器首先加载的网页URL是:http:

停车场管理系统测试报告

停车场管理系统测试分析报告 08软件工程(2) 20081344082 张伟东

1引言 1.1编写目的 随着时代的发展,私家车越来越多,而车位却十分紧张。在市区内有很多空间没有被充分利用,大多车辆是停在路边或者简易停车场,缺乏管理,这样导致了资源的浪费,也造成了街道的拥堵。为了适应社会的发展,大量的现代化大规模的停车场会被投入使用,但管理方面又容易出现问题。因此,停车场管理系统的开发和应用是十分必要的。 1.2项目背景 开发软件名称:停车场管理系统 项目开发者:某软件开发小组 用户单位:某公司 大体框架: 智能停车场收费管理系统 门禁管理系统 智能通道管理系统 闭路监视系统(CCTV) 消防安全系统(FA)和保安系统(SA) 1.3定义 一级错误:不能完全满足系统要求,基本功能未完全实现 二级错误:严重地影响系统要求或基本功能的实现,且没有更正办法(重新安装或重新启动该软件不属于更正办法)。 三级错误:严重地影响系统要求或基本功能的实现,但存在合理的更正办法(重新安装或重新启动该软件不属于更正办法)。 四级错误:使操作者不方便或遇到麻烦,但它不影响执行工作功能或重要功能。 五级错误:其他错误。 回测:产生测试错误或缺陷的测试项由软件开发人员进行修改调试正确后,由软件测试人员再次进行的针对该测试项及其相关项的测试。 1.4参考资料 钱乐秋等,《软件工程》,青还大学出版社;

张害藩,《软件工程导论》(第四版),清华大学出版社; 王珊等,《数据库原理及设计》,清华大学出版社; 2测试计划执行情况 2.1项目名称 项目中文简称:停车场管理系统 2.2测试项目 2.3测试方案 采用黑盒测试方法,整个过程采用自底向上,逐个集成的办法,一次进行单元测试,组装测试,测试用例的设计应包括合理的何不合理的输入条件。 2.4测试结果 3软件需求测试结论

最新数据结构实训总结

精品文档 这次课程设计的心得体会通过实习我的收获如下1、巩固和加深了对数据结构的理解,提高综合运用本课程所学知识的能力。2、培养了我选用参考书,查阅手册及文献资料的能力。培养独立思考,深入研究,分析问题、解决问题的能力。3、通过实际编译系统的分析设计、编程调试,掌握应用软件的分析方法和工程设计方法。4、通过课程设计,培养了我严肃认真的工作作风,逐步建立正确的生产观念、经济观念和全局观念。从刚开始得觉得很难,到最后把这个做出来,付出了很多,也得到了很多,以前总以为自己对编程的地方还不行,现在,才发现只要认真做,没有什么不可能。 编程时要认真仔细,出现错误要及时找出并改正,(其中对英语的要求也体现出来了,因为它说明错误的时候都是英语)遇到问题要去查相关的资料。反复的调试程序,最好是多找几个同学来对你的程序进行调试并听其对你的程序的建议,在他们不知道程序怎么写的时候完全以一个用户的身份来用对你的用户界面做一些建议,正所谓当局者迷旁观者清,把各个注意的问题要想到;同时要形成自己的编写程序与调试程序的风格,从每个细节出发,不放过每个知识点,注意与理论的联系和理论与实践的差别。另外,要注意符号的使用,注意对字符处理,特别是对指针的使用很容易出错且调试过程是不会报错的,那么我们要始终注意指针的初始化不管它怎么用以免不必要麻烦。 通过近两周的学习与实践,体验了一下离开课堂的学习,也可以理解为一次实践与理论的很好的连接。特别是本组所做的题目都是课堂上所讲的例子,在实行之的过程中并不是那么容易事让人有一种纸上谈兵的体会,正所谓纸上得来终觉浅绝知此事要躬行。实训过程中让我们对懂得的知识做了进一步深入了解,让我们的理解与记忆更深刻,对不懂的知识与不清楚的东西也做了一定的了解,也形成了一定的个人做事风格。 通过这次课程设计,让我对一个程序的数据结构有更全面更进一步的认识,根据不同的需求,采用不同的数据存储方式,不一定要用栈,二叉树等高级类型,有时用基本的一维数组,只要运用得当,也能达到相同的效果,甚至更佳,就如这次的课程设计,通过用for的多重循环,舍弃多余的循环,提高了程序的运行效率。在编写这个程序的过程中,我复习了之前学的基本语法,哈弗曼树最小路径的求取,哈弗曼编码及译码的应用范围,程序结构算法等一系列的问题它使我对数据结构改变了看法。在这次设计过程中,体现出自己单独设计模具的能力以及综合运用知识的能力,体会了学以致用、突出自己劳动成果的喜悦心情,也从中发现自己平时学习的不足和薄弱环节,从而加以弥补。 精品文档

停车场管理系统方案设计

实用文档 停车场管理系统设计方案

重庆冠超科技有限公司

第一章项目概述 一、项目情况说明 本次方案设计主要针对物流园区停车场管理系统进行设计,同时结合我公司对整个停车场管理系统的总体规划,提供的管理模式以供参考。 此次停车场管理系统为一进一出(可脱机收费)停车场管理系统,入口人工识别车型发卡,出口刷卡软件显示收费金额(LED同步),在停车场系统的出口设置收费管理电脑近距离读卡系统、图像对比系统、收费等。设置系统管理中心,数据的查询、管理等。 第二章系统设计思路 一、系统总体规划设计 本方案中提供停车场管理模式以供参考: 管理模式: 此为目前行业所有厂家最为通用的一种模式,停车场系统只在本地独立运行,停车场系统为独立的局域网,不借用办公网络,只能在本地存储、备份、查询和管理系统数据。 二、系统组成及功能设计 1、入口设备组成及功能设计 (1)入口设备组成 停车场入口设备由入口自动道闸(车辆检测器)、摄像机、聚光灯、近距离读卡器等组成。 一卡一车的逻辑控制功能:同一张卡如果已经入场,必须出场后才能再次入场,确

保一卡一车、一进一出的逻辑控制。 收费及记录存储功能:控制机标准设计用户数为10000,脱机记录数为10000万条。 满足大系统有更大容量要求。 手动开闸记录功能:系统具有手动开闸记录功能,给管理人员提供更多的监管手段。 图像抓拍对比功能:车辆入场时,系统会抓拍车辆的入场图片并存储,以供车辆出场时进行人工比对。 2、出口设备组成及功能设计 (1)出口设备组成 停车场出口设备由出口(含近距离读卡器、CAK3000控制器、显示屏、语音提示系统及附件)、自动道闸(车辆检测器)、摄像机、聚光灯、远距离读卡器等组成。 (2)出场功能设计 信息显示及广告发布功能:出口票箱显示屏能通过管理电脑软件加载广告信息或停车场信息,在无车情况时,显示屏会滚动显示当前时间和用户发布的广告等信息。 语音提示功能:当有车行驶至出口票箱车辆检测线圈上时,出口票箱检测到有车,会根据当前的时间,立即通过语音提示系统发出礼貌用语并在显示屏上显示礼貌用 语(提示信息:如一路顺风等等)。对于控制机使用过程中的操作,语音提示系统 也会进行相应的提示。 一卡一车的逻辑控制功能:同一张卡如果已经出场,必须再次入场后才能再次出场,确保一卡一车、一进一出的逻辑控制。 手动开闸记录功能:系统具有手动开闸记录功能,给管理人员提供更多的监管手段。 图像抓拍对比功能:车辆出场时,系统会抓拍车辆的出场图片并存储,以便操作人员与入场图像进行人工比对。 3、出口岗亭管理设备组成及功能设计 (1)出口岗亭管理设备组成 停车场出口岗亭管理设备由收费电脑、网络交换机、临时卡计费器、视频捕捉卡等组成。 (2)出口岗亭管理功能设计 临时卡收费功能:临时卡出场可通过岗亭内临时卡计费器读卡(也可在出口票箱面板读卡感应区),并根据相应的收费标准进行收费并提示收费金额、停车时间等。

数据结构课程设计报告

数据结构课程设计 设计说明书 TSP 问题 起止日期:2016 年 6 月27 日至2016 年7 月 1 日 学生姓名 班级 学号 成绩 指导教师( 签字) 2016 年7 月 1 日

目录 第1 章需求分析.................................................................................1... 1.1 简介 (1) 1.2 系统的开发背景 (1) 1.3 研究现状 (1) 第2 章概要设计.................................................................................2... 2.1 系统开发环境和技术介绍 (2) 2.2 系统需求分析 (2) 2.2.1 总体功能分析 (2) 2.2.2 核心功能分析 (3) 第3 章详细设计...................................................................................4... 3.1 系统开发流程 (4) 3.2 系统模块设计 (4) 3.3 系统结构 (6) 3.2 系统流程图 (6) 第4 章调试分析...................................................................................7... 4.1 程序逻辑调试 (7) 4.2 系统界面调试 (8) 第5 章测试结果...................................................................................9... 5.1 测试环境 (9) 5.2 输入输出测试项目 (9) 5.3 测试结果 (10) 结论.....................................................................................................1..1.. 参考文献................................................................................................1..1. 附录.......................................................................................................1..2..

停车场管理系统分析设计报告

《停车场管理系统分析设计报告》 专业:信息管理与信息系统 班级:信息06乙 学号: 姓名: 2009年06月 1.1项目背景 (1) 1.2现有系统存在的问题 (1) 1.3系统目标 (2) 1.4系统可行性研究 (2) 1.5系统实施计划 (2) 第2章系统分析 (3) 2.1业务流程分析 (3) 2.2功能分析 (3) 2.3 数据分析 (4) 第3章系统设计 (4) 3.1 模块结构图 (4) 3.2 代码设计 (4) 3.3 数据库设计 (5) 3.4 输出设计 (5) 3.5 输入设计 (5) 第4章系统实现 (6) 4.1 主控模块 (6) 4.2 信息录入模块 (8) 4.3 信息查询模块 (10) 第五章系统评价 (12)

第一章前言 1.1项目背景 智能停车场管理系统的发展背景:目前中国已经成为世界第三大汽车生产国和第二大汽车消费国,据权威部门数据表明,截至2006年底,中国汽车保有量突破3500万辆,私人汽车拥有量已达2925万辆,其中4年以内的新车占到百分之六十。预计2010年国内汽车保有量将达到5600万辆左右,而且每年汽车增长率都以50%-80%的速度增长,这就导致了50%的汽车无序停放现象,智能停车已经成为推动城市发展不可或缺的一部分,但随之而来的,车多位少、停车难的问题也日渐突出,成为当前社会普遍的关注点。 随着社会的进步和发展,人们的生活方式发生着深刻的变化。城市的交通拥挤便是这种变化引起的现象之一。城市由于交通设施的增加造成的交通拥挤甚至混乱给人们的生活带来极大的不便,这种不便迫使人们去寻找高技术的有效手段去解决这种不便。 智能化的停车场就是顺应这一时代需求的高技术产物。这不仅可以有效地解决交通拥堵,使车辆迅速通过。而且可以促进交通设施的正规化建设,同时也尽可能地减少车主失车被盗的忧虑。另外,在技术方面,其高技术性匹配于现有其他智能化系统,具有很好的开放性,易于与其他智能化系统组合成更强大的综合系统,顺应各种综合方式的高级管理。 近几年来,我国停车场自动管理技术已逐渐走向成熟,停车场管理系统向大型化、复杂化和高科技化方向发展,已经成为智能建筑的重要组成部分,并作为楼宇自控系统的一个子系统与计算机网络相联,使远距离的管理人员可以监视和控制停车场。建筑学生联盟。 智能停车场管理系统采用先进技术和高度自动化的机电设备,并结合用户在停车场收费管理方面的需求,以及交通管理方面的经验而开发的系统。该系统提供了一种高效率的管理方式,为用户提供更方便、更有效的服务。 智能停车场管理系统将机械、电子计算机和自控设备以及智能IC卡技术有机地结合起来,通过电脑管理可实现车辆出入管理、自动存储数据等功能,实现脱机运行并提供—种高效管理服务的系统。 新型的智能停车场将生活理念和建筑艺术、信息技术、计算机电子技术等现代高科技完美结合,提供的是一种操作简单、使用方便、功能先进的人性化系统。它依靠高科技,以人为本,采用图形人机界面操作方式,具有操作简单、使用方便、功能先进等优点,提供一种更加安全、舒适、方便、快捷和开放的智能化、信息化生活空间,促进了人文环境的健康发展。车场使用者可以在最短的时间进入或离开停车场,以提高车库管理质量,取得高的经济效益和良好的社会效益。 1.2现有系统存在的问题 (1)人工现金收费方式,一方面是劳动强度大、效率低,另一方面是在财务上造成很大的漏洞和现金流失、乱收费、管理成本高等弊端。 (2)停车场没有明码标价

相关文档
最新文档