程序课程设计报告文本文件单词的检索与计数 停车场管理

程序课程设计报告文本文件单词的检索与计数 停车场管理
程序课程设计报告文本文件单词的检索与计数 停车场管理

程序设计课程设计

报告

目录

题目1: 文本文件单词的检索与计数 ........................................... 错误!未定义书签。

1.1【问题描述】--------------------------------------------------1

1.2【设计需求及分析】--------------------------------------------1

1.3【设计功能的实现】--------------------------------------------1

1.4【实例测试及运行结果】----------------------------------------7

1.4.1 运行实例一-------------------------------------------错误!未定

义书签。

1.4.1 运行实例二-------------------------------------------8

题目2: 停车场管理

-----------------------------------------------------------------------------------9

2.1【问题描述】--------------------------------------------------9

2.2【设计需求及分析】--------------------------------------------9

2.3【设计功能的实现】--------------------------------------------9

2.4【实例测试及运行结果】---------------------------------------15

2.5【实现提示】-------------------------------------------------16

设计题目一

1.文本文件单词的检索与计数

1.1【问题描述】

设计C或C++程序,统计在这样的英文文本文件中,出现了多少个单词,每个单词出现了几次。连续的英文字符都认为单词(不包括数字),单词之间用空格或标点符号分隔。

1.2【设计需求及分析】

要统计英文文本文件中出现了哪些单词,就要从文件中读取字符,读取出来的连续英文字符认为是一个单词,遇空格或标点符号单词结束。

使用线性表记录单词以及每个单词出现的次数。线性表中的单词按字典顺序存储。

线性表的顺序存储结构如下:

#define LIST_INIT_SIZE 100 //线性表存储空间的初始分配量

#define LISTINCREMENT 10 //线性表存储空间的分配增量

typedef struct{

char word[21] //存储单词,不超过20个字符

int count; //单词出现的次数

} ElemType;

typedef struct{

ElemType *elem; //存储空间基址

int length; //当前长度

int listsize; //当前分配的存储容量

} Sqlist;

1.3【设计功能的实现】(用C或C++语言描述)

#include

#include

#include

#define LIST_INIT_SIZE 100

#define LISTINCREMENT 10

typedef struct{

char word[21];

int count;

} ElemType;

typedef struct{

ElemType *elem;

int length;

int listsize;

} SqList;

int InitList(SqList *p){

p->elem=(ElemType*)malloc(LIST_INIT_SIZE*sizeof(ElemType));

if(p->elem==NULL) return 0;

p->length=0;

p->listsize=LIST_INIT_SIZE;

return 1;

}

int LocateElem(SqList *p,char *word)

{

int low,high,mid;

low=0;high=p->length-1;

while(low<=high)

{

mid=(low+high)/2;

if(strcmp(word,p->elem[mid].word)==0) //表中进行二分查找{

p->elem[mid].count++;

return 0;

}

else if(strcmp(word,p->elem[mid].word)<0)

high=mid-1;

else

low=mid+1;

}

return low+1; //返回插入点序号

}

int InsertList(SqList *p,int i,char *word)

{

int j;

ElemType *base;

if(p->length>=p->listsize)

{

base=(ElemType*)realloc(p->elem,(p->listsize+LISTINCREMENT)*sizeof(ElemT ype));

if(base==NULL) return 0;

p->listsize=p->listsize+LISTINCREMENT; //扩充表长

p->elem=base;

}

for(j=p->length;j>=i;j--)

p->elem[j]=p->elem[j-1];

strcpy(p->elem[i-1].word,word);

p->elem[i-1].count=1;

p->length++;

return 1;

}

void PrintList(SqList *p,int num)

{

FILE *fw;

int i;

int no=num;

fw=fopen("D:\\单词计数.txt","w");

fprintf(fw,"该文章共有%d 个单词\n以下按字母顺序来显示每个单词出现的次数\n******************************************\n",no);

fprintf(fw,"单词出现次数\n",no);

for(i=0;ilength;i++)

fprintf(fw,"%-24s %-5d\n",p->elem[i].word,p->elem[i].count);

fprintf(fw,"******************************************\n");

fclose(fw);

}

//主函数

void main()

{

SqList L;

char word[21],ch,filename[30],filename1[50];

int num=0,i,j=0,mark=0;

FILE *fp;

InitList(&L);

printf("请将要检索的文本文件放入D盘根目录,然后输入文件名(不用写后缀): ");

scanf("%s",&filename);

sprintf(filename1,"D:\\%s.txt",filename);

getchar();

if((fp=fopen(filename1,"r"))==NULL)

{

printf("打开文件失败,请确认文件名与文件路径!\n"); getchar();

exit(0);

}

ch=fgetc(fp);

while(ch!=EOF)

{

if((ch>='A'&&ch<='Z')||(ch>='a'&&ch<='z'))

{

ch=ch>='A'&&ch<='Z'?ch+32:ch;

word[j++]=ch;

mark=1;

}

else

{

if (mark==1)

{

if (j>20)

{printf("文章中部分单词太长不予统计");}

num++;

word[j]='\0';

mark=0;

j=0;

i=LocateElem(&L,word);

if(i>0)

InsertList(&L,i,word);

}

}

ch=fgetc(fp);

}

fclose(fp);

printf("统计结束!请查看打开的单词计数.txt 里面便是检索结果。"); PrintList(&L,num);

system("start \"\" D:\\单词计数.txt");

getchar();

}#define LIST_INIT_SIZE 100

#define LISTINCREMENT 10

typedef struct{

char word[21];

int count;

} ElemType;

typedef struct{

ElemType *elem;

int length;

} SqList;

int InitList(SqList *p){

p->elem=(ElemType*)malloc(LIST_INIT_SIZE*sizeof(ElemType)); if(p->elem==NULL) return 0;

p->length=0;

p->listsize=LIST_INIT_SIZE;

return 1;

}

int LocateElem(SqList *p,char *word)

{

int low,high,mid;

low=0;high=p->length-1;

while(low<=high)

{

mid=(low+high)/2;

if(strcmp(word,p->elem[mid].word)==0) //表中进行二分查找{

p->elem[mid].count++;

return 0;

}

else if(strcmp(word,p->elem[mid].word)<0)

else

low=mid+1;

}

return low+1; //返回插入点序号

}

int InsertList(SqList *p,int i,char *word)

{

int j;

ElemType *base;

if(p->length>=p->listsize)

{

base=(ElemType*)realloc(p->elem,(p->listsize+LISTINCREMENT)*sizeof(ElemT ype));

if(base==NULL) return 0;

p->listsize=p->listsize+LISTINCREMENT; //扩充表长

p->elem=base;

}

for(j=p->length;j>=i;j--)

p->elem[j]=p->elem[j-1];

strcpy(p->elem[i-1].word,word);

p->elem[i-1].count=1;

p->length++;

return 1;

}

void PrintList(SqList *p,int num)

{

FILE *fw;

int i;

int no=num;

fw=fopen("D:\\单词计数.txt","w");

fprintf(fw,"该文章共有%d 个单词\n以下按字母顺序来显示每个单词出现的次数\n******************************************\n",no);

fprintf(fw,"单词出现次数\n",no);

for(i=0;ilength;i++)

fprintf(fw,"%-24s %-5d\n",p->elem[i].word,p->elem[i].count);

fprintf(fw,"******************************************\n");

fclose(fw);

}

//主函数

void main()

{

SqList L;

char word[21],ch,filename[30],filename1[50];

int num=0,i,j=0,mark=0;

FILE *fp;

InitList(&L);

printf("请将要检索的文本文件放入D盘根目录,然后输入文件名(不用写后缀): "); scanf("%s",&filename);

sprintf(filename1,"D:\\%s.txt",filename);

getchar();

if((fp=fopen(filename1,"r"))==NULL)

{

printf("打开文件失败,请确认文件名与文件路径!\n");

getchar();

exit(0);

}

ch=fgetc(fp);

while(ch!=EOF)

{

if((ch>='A'&&ch<='Z')||(ch>='a'&&ch<='z'))

{

ch=ch>='A'&&ch<='Z'?ch+32:ch;

word[j++]=ch;

mark=1;

}

else

{

if (mark==1)

{

if (j>20)

{printf("文章中部分单词太长不予统计");}

num++;

word[j]='\0';

mark=0;

j=0;

i=LocateElem(&L,word);

if(i>0)

InsertList(&L,i,word);

}

}

ch=fgetc(fp);

}

fclose(fp);

printf("统计结束!请查看打开的单词计数.txt 里面便是检索结果。"); PrintList(&L,num);

system("start \"\" D:\\单词计数.txt");

getchar();

}1.3.1 实现顺序表的基本操作

⑴顺序表的初始化:InitList(SqList &L)

⑵顺序表上查找指定的单词:LocateElem(SqList &L,char *s)

若找到,单词的出现次数增1,返回0,否则返回该单词的插入位置。

⑶在顺序表上插入新的单词:InsertList(SqList &L,int i,char *s)

要求按字典顺序有序。新单词的出现次数为1.

⑷输出顺序表上存储的单词统计信息:PrintList(SqList &L)

输出文件中每个单词出现的次数以及文件中总的单词数(可输出到文件中)。

1.3.2 统计单词数

统计过程如下:

(1)输入要统计单词的文本文件名,打开相应的文件;

(2)初始化顺序表;

(3)从文本文件中读取字符,直到文件结束。具体描述如下:

While (读文件没有结束)

{

过滤单词前的非字母字符;

读取一个单词,已字符串形式存储在一个字符数组中;

在线性表中查找该单词,若找到,单词的出现次数加1,否则返回其插入位置;

上一步中,若没找到,则进行插入操作;

处理下一个单词。

}

(4)关闭文件,输出统计结果。

1.4【实例测试及运行结果】

1.4.1 运行实例一

文章:love(我自己写的,只有一句话)运行结果:

1.4.1 运行实例二

文章:tyut

运行结果:

设计题目二

2.停车场管理

2.1【问题描述】

设停车场是一个可停放n辆汽车的狭长通道,且只有一个大门可供汽车进出。汽车在停车场内按车辆到达时间的先后顺序,依次由北向南排列(大门在最南端,最先到达的第一辆车停放在停车场的最北端),若停车场内已停满n辆汽车,则后来的汽车只能在门外的便道上等候,一旦有车开走,则排在便道上的第一辆车即可开入;当停车场内某辆车要离开时,在它之后进入的车辆必须先退出车场为它让路,待该辆车开出大门外,其他车辆再按原次序进入车场,每辆停放在车场的车在它离开停车场时必须按它停留的时间长短交纳费用。试为停车场编制按上述要求进行管理的模拟程序。

2.2【设计需求及分析】

以栈模拟停车场,以队列模拟车场外的便道,按照从终端读入的输入数据序列进行模拟管理。每一组输入数据包括三个数据项:汽车“到达”或“离去”信息、汽车牌照号码以及到达或离去的时刻。对每一组输入数据进行操作后的输出信息为:若是车辆到达,则输出汽车在停车场内或便道上的停车位置;若是车辆离去,则输出汽车在停车场内停留的时间和应交纳的费用(在便道上停留的时间不收费)。栈以顺序结构实现,队列以链表结构实现。2.3【设计功能的实现】(用C或C++语言描述)

#include

#include

#include

#include

#define MAX 10

#define price 0.05 typedef struct time {

int hour;

int min;

}time;

typedef struct carnode {

char num[10];

time reach;

time leave;

}carnode;

typedef struct carstack {

carnode *stack[MAX+1]; int top;

}carstack;

typedef struct qnode {

carnode *data;

停车场管理系统课程设计

一、课程设计容 1.有一个两层的停车场, 每层有6个车位, 当第一层车停满后才允许使用第二层. ( 停车场可用一个二维数组实现, 每个数组元素存放一个车牌号) 每辆车的信息包括车牌号, 层号, 车位号, 停车时间共4项. 其中停车时间按分钟计算 2. 假设停车场初始状态为第一层已经停有4辆车, 其车位号依次为1—4 , 停车时间依次为20, 15, 10 , 5 . 即先将这四辆车的信息存入文件”car.txt”中( 数组的对应元素也要进行赋值) 3. 停车操作: 当一辆车进入停车场时, 先输入其车牌号, 再为它分配一个层号和一个车位号(分配前先查询车位的使用情况, 如果第一层有空则必须停在第一层), 停车时间设为5 , 最后将新停入的汽车的信息添加文件”car.txt”中, 并将在此之前的所有车的停车时间加5. 4. 收费管理(取车): 当有车离开时, 输入其车牌号, 先按其停车时间计算费用, 每5分钟0.2元. (停车费用可设置一个变量进行保存), 同时从文件”car.txt”中删除该车的信息, 并将该车对应的车位设置为可使用状态(即二维数组对应元素清零). 按用户的选择来判断是否要输出停车收费的总计. 5. 输出停车场中全部车辆的信息. 6. 退出系统. 实验程序流程图

停车

取车

实验源程序 #include #include #include #include #define N 12 void park();//停车 void getout();//取车并计算停车费用int x=4; int Time=0; struct C { char car_number[8];//车牌号 int fooler;//层数 int carport;//车位号 int time;//停车时间

停车场管理系统设计

面向对象程序设计(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 系统。

车位停车场车位控制PLC课程设计报告书

电气控制技术课程设计任务书系:年级:专业:

课程设计说明书

名称车位停车场车位控制 院系 班级 姓名 学号 系主任 教研室主任 指导教师 目录 1.绪论 (2) 1.1 引言 (2) 1.2 智能停车场的现状 (2) 2.系统设计方案总则 (3)

2.1系统设计方案总则 (3) 2.2设计目标及原则 (4) 3.软件系统 (5) 3.1I/O分布图 (5) 3.2外部接线图 (6) 3.3流程图 (7) 3.4梯形图 (8) 4. 可选系统部件 (9) 4.1车场车位引导系统概述 (9) 4.2 系统结构 (9) 5.参考文献 (10) 6.结束语 (11)

1.绪论 1.1 引言 随着进口汽车大量涌人和国汽车工业的不断发展,大中城市的汽车数量剧增,从而引发了停车管理问题。近几年,我国的停车场管理技术不断完善,计算机技术、通信技术、网络技术的发展又促进了停车场管理系统功能的强大。率低等问题。 由于小区停车场供住户使用。小区停车场管理系统重点要做到准确指示车辆进出,车辆进入时给与司机准确的车位数量与具体位置,车辆进入后,记录车辆总量,车辆离开时,减少车辆数量。车辆进出指示可完全由PLC作为中央控制处理,停车场空位指示可利用价格较不高的数码管显示。 一种停车场车位管理系统,它由固设在停车场中的管理控制器、埋设在车位处的电动车位锁及移动控制器相互连接构成;管理控制器包括传感器接收模块、逻辑控制电路及驱动控制电路;电动车位锁的电源端与驱动控制电路的电源输出端连接;移动控制器中设有数据读写控制电路、无线遥控发射模块及电池,该无线遥控发射模块通过移动控制器外部设置的遥控天线与管理控制器的接收天线进行无线信号连接。本实用新型通过将管理控制器、移动控制器及电动车位锁可以方便的实现停车场车位的有效管理,具有极大的实用价值。 1.2 智能停车场的现状 随着科技的进步,电子技术、计算机技术、通讯技术不断地向各种领域渗透,当今的停车场车位控制系统已经向智能型的方向转变。先进可靠的停车场控制系统在停车场管理系统中的作用越来越大。 利用PLC控制停车的停车场管理系统是一种高效快捷、公正准确、科 学经济的停车场管理手段,是停车场对于车辆实行动态和静态管理的综合。 从用户的角度看,其服务高效、准确无误;从管理者的角度看,其易于操 作维护、动化程度高、大大减轻管理者的劳动强度;从投资者角度看,彻 底杜绝失误及任何形式的作弊,防止停车费用流失,使投资者的回报有了 可靠的保证。 系统以PLC为信息载体,通过智能传感器记录车辆进出信息,结合工业自动化控制技术控制机电一体化外围设备,从而控制进出停车场的各种车辆。

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

实验二停车场管理 班级:A0712 学号:12 姓名:冷清淼成绩:__________ 指导教师签名:__________ 一、问题描述 设停车场是一个可停放n辆车的狭长通道,且只有一个大门可供汽车进出。在停车场内,汽车按到达的先后次序,由北向南依次排列(假设大门在最南端)。若停车场内已停满n辆车,则后来的汽车需在门外的便道上等候,当有车开走时,便道上的第一辆车即可开入。当停车场内某辆车要离开时,在它之后进入的车辆必须先退出停车场为它让路,待该辆车开出大门后,其他车辆再按原次序返回车场。每辆车离开停车场时,应按其停留时间的长短交费(在便道上停留的时间不收费)。 设计要求: 1.模拟上述管理过程。要求以顺序栈模拟停车场,以链队列模拟便道。 2.从终端读入汽车到达或离去的数据,每组数据包括三项: (1)是“到达”还是“离开”; (2)汽车牌照号码; (3)“到达”或“离开”的时刻。 3.与每组输入信息相应的输出信息为:如果是到达的车辆,则输出其在停车场中或便道上的位置;如果是离去的车辆,则输出其在停车场中停留的时间和应交的费用。 二、算法说明 1.数据结构说明 (1)用到两个堆栈:一个为车场栈;另一个为临时栈temp typedef struct NODE{ CarNode *stack[MAX+1]; int top; }SeqStackCar; /*模拟车场*/ (2)一个队列结构,存储便道车辆信息:

typedef struct Node{ QueueNode *head; QueueNode *rear; }LinkQueueCar; /*模拟便道*/ 2.算法说明 (1) 功能模块说明:停车场管理系统含有三个模块,即:车辆到达、离开、列表显示 停车场系统车辆到达 车辆离开列表显示 3 2 1 图1 (2)以模块为单位分析算法 1、“到达”模块:到达时有两种情况,即车场是否满,未满则直接进入停车场;满时,到便道等待。如图2。 车辆到达 停车场是否满 结束 进入停车场 进入便道 是 否 图2

停车场管理系统课程设计报告

重庆科技学院 《面向对象程序设计》 课程设计报告 学院:_ 电气与信息工程学院_ 专业班级:计科12-04 学生姓名:田园学号: 2012442095 设计地点(单位)________计算机自主学习中心 ___ _____ 设计题目:_____ _ 停车场管理系统__ ____ 完成日期: 2013 年1月18日 指导教师评语: ______________________ __ _______________ __________________________________________________________________________________ __________________________________________________________________________________ _____________________________________ __________ _ 成绩(五级记分制):______ __________ 指导教师(签字):________ ________

摘要 当今社会,停车场管理电脑化已经成为了停车场管理的不可缺少的一项重要内容, 随着停车车辆的不断增加,停车场对停车的管理越来越复杂,所以要实现对停车的正确管理是必不可少的。本次课程设计就是为了对停车基本的信息及其停车费用的管理做一个简单的表现,主要实现对停车的信息录入,修改,删除,显示,添加,查找等几个方面的功能。而要实现这些功能,首先要建一个数组,将所有停车的信息都统筹起来,而且通过C++建立类的方式完成这些过程,并且能准确明显的显示每辆停车的基本信息和 对其资费的管理。通过如此对停车的管理,可以达到对停车信息的准确管理。 关键词:停车场管理数组 C++ 类

停车场管理系统 c语言

2015-2016学年第二学期《高级语言程序设计》 课程设计报告 题目:停车场管理系统 专业:计算机科学与技术 班级:15级计科<1>班 姓名:胡玉玉 指导教师:陈广宏 成绩: 计算机学院 2016 年 4月 25 日

目录 1. 设计内容及要求 (1) 1.1 课程设计内容 (1) 1.2 课程设计的要求 (2) 2概要设计 (3) 2.1 设计思路 (3) 2.2 程序基本框架结构图 (4) 3设计过程或程序代码 (5) 3.1 主要程序代码及解释 (5) 4设计结果与分析 (13) 4.1 程序运行结果截图与分析 (13) 5参考文献 (16)

1.设计内容及要求 1.1 课程设计内容 ①通过本次课程设计,强化上级动手能力,在理论和实践的基础 上巩固《C语言程序设计》课程的学习内容。掌握软件设计的基本方法。 ②熟悉C语言的基本内容从而掌握C语言的基本知识以及了解C 语言的基本编写及运行。 ③了解程序的分模块编写并对程序的每个模块进行详细的设计并 且能理解一般C语言编写的程序。 ④掌握书写程序设计说明文档的能力。 ⑤熟悉C程序设计的开发环境及C程序的调试过程 1.2 课程设计的要求 ①分析课程设计题目的要求。 ②写出详细设计说明。 ③编写程序代码,调试程序使其能正确运行。 ④设计完成的软件要便于操作和使用。 ⑤设计完成后提交课程设计报告。

2.概要设计 2.1设计思路 停车场是一个可停放n辆汽车的狭长通道,并只有一个大门可供汽车进出,汽车在停车场内按车辆到达的先后顺序,依次由北向南排列(大门在最南端,最先到达的第一辆车停放在车场的最北端),如车长内已停满n辆汽车,则后来的汽车只能在门外的便道上等候,一旦有车开走,则排在便道上的第一辆车即可开入;当停车场内某辆车要离开时,在它后进入的车辆必须先退出车场为它让路,待该辆车开出大门外,其它车辆再按原次序进入车场,每辆停放在车场的车在它离开停车场时必须按它停留的时间长短交纳费用,以栈模拟停车场,以队列模拟车场外的便道,按照从终端读入的输入数据序列进行模拟管理.每一组输入数据包括三个数据项:汽车”到达” 或”离去”信息,汽车牌照号码以及到达或离去的时刻(到达或离去的时刻也可用计算机控制).对每一组输入数据进行操作后的输入信息为:如是车辆到达,则输入汽车在停车场。 2.2程序基本框架结构图

地下停车场课程设计说明书

河南城建学院 《城市地下空间规划理论》课程设计 说明书 课程名称: 城市地下空间规划理论 题目: 南门家属院地下停车场的规划设计 专业: 城市地下空间工程 学生姓名: 鲁桂强 学号: 指导教师: 开始时间: 2014 年 12 月 29 日 完成时间: 2015 年 01 月 11 日 课程设计成绩: 指导教师签名:年月日

目录 第一章绪论..................................................................................................................................... ? 1.1地下停车场特点................................................................................................................ ? 1.2地下停车场规划步骤........................................................................................................ ? 1.3地下停车场规划要点........................................................................................................ ? 1.4开发地下停车场的目的.................................................................................................... ?第二章教学区现状调查与分析..................................................................................................... ? 2.1 实例介绍......................................................................................................................... ? 2.2实例分析............................................................................................................................ ?第三章停车场的选址..................................................................................................................... ? 3.1 总图设计时应考虑的因素............................................................................................. ? 3.2 教学区区停车场规划..................................................................................................... ? 3.3 总的形状、建筑面积说明............................................................................................... ? 3.4 功能区划分及面积说明................................................................................................... ?第四章停车场主体平面设计......................................................................................................... ? 4.1 设计的基本要求............................................................................................................... ? 4.2停车区的划分及面积估算................................................................................................ ? 4.3 车位及行车通道的平面设计........................................................................................... ? 4.4 停车场坡道的设计........................................................................................................... ? 4.4.1坡道的形式.............................................................................................................. ? 4.4.2 坡道的技术参数................................................................................................... ? 4.4.3汽车坡道设计数量.................................................................................................. ? 4.4.4停车场层高设计...................................................................................................... ?第五章消防、通风排烟和排水系统............................................................................................. ?第六章结论................................................................................................................................... ?参考文献........................................................................................................................................... ?

数据结构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;

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

数据结构课程设计《停车场管理系统》 专业:信息管理与信息系统 班级:10信本 指导教师: 完成日期:2012年1月1日

目录 一、课程设计目标 (1) 1 问题描述 (1) 2 问题分析 (1) 二、概要设计 (1) 1 抽象数据类型定义 (1) 2 模块划分 (4) 三、详细设计 (6) 1 数据类型的定义 (6) 2 主要模块的算法描述 (8) 四、测试分析 (14) 1 主界面 (14) 2 具体操作 (15) 五、课程设计总结 (17) 六、源程序清单 (18) *参考文献 (30) *设计人员名单 (31)

一、课程设计目标 1 问题描述 设停车场是一个可停放n辆汽车的狭长通道,且只有一个门可供出入。汽车在停车场内按车辆到达时间的先后顺序,依次由北向南排列(门在最南端,最先到达的第一辆车停放在车场的最北端),若车场内已停满n辆汽车,则后来的汽车只能在门外的便道上等候,一旦有车开走,则排在便道上的第一辆汽车即可开入;当停车场内某辆车要离开时,在它之后进入的车辆必须先退出车场为它让路,待该辆车开出大门外,其他车辆再按原顺序进入车场,每辆停放在车场的车在它离开停车场时必须按它停留的时间长短交纳费用。 2 问题分析 (1)根据车辆到达停车场到车辆离开停车场时所停留的时间进行计时收费。 (2)当有车辆从停车场离开时,等待的车辆按顺序进入停车场停放。实现停车场的调度功能。 (3)用顺序栈来表示停车场,链队表示停车场外的便道。 (4)显示停车场信息和便道信息。 (5)程序执行的命令为:○1车辆进入停车场○2车辆离开停车场○3显示停车场的信息。 二、概要设计 1 抽象数据类型定义 (1)栈的抽象数据类型定义 AST Stack{ 数据对象:D={ai|ai∈ElemSet,i=1,2,...,n, n≥0} 数据关系:R1={|ai-1,ai∈D,i=2,...,n} 约定an端为栈顶,a1端为栈底。 基本操作: InitStack(&S) 操作结果:构造一个空栈S。 DestroyStack(&S)

停车场管理系统源代码

//停车场管理系统 #include #include #define OVERFLOW 0 #define ERROR 0 #define OK 1 #define STACKSIZE 2 //车库容量 //时间节点 typedef struct time{ int hour; int min; }Time; //车辆信息 typedef struct{ char CarNum; float time; int pos_a; //车在停车场中的位置 int pos_b; //车在便道上的位置 int flag; }Car,Car2; //车库信息(顺序栈) typedef struct{ Car *top; Car *base; int stacksize; }SqStack; //初始化 int InitStack(SqStack &S){ S.base=new Car[STACKSIZE]; if(!S.base) exit(OVERFLOW); S.top=S.base; S.stacksize=STACKSIZE; return OK; } //判空 int StackEmpty(SqStack S){ if(S.top==S.base) return OK; else return ERROR; }

//判满 int StackFull(SqStack S){ if(S.top-S.base>=S.stacksize) return OK; else return ERROR; } //入栈 int Push(SqStack &S,Car e){ if(S.top-S.base==S.stacksize) return ERROR; *S.top++=e; return OK; } //出栈 int Pop(SqStack &S,Car &e){ if(S.top==S.base) return ERROR; e=*--S.top; return OK; } //遍历栈 int StackTraverse(SqStack S) { Car *p=S.top; Car *q=S.base; int l=1; if(StackEmpty(S)){ for(int j=1;j<=STACKSIZE;j++){ printf("\t车牌:"); printf("\t\t到达时间:"); printf("\t位置%d:空空",j); printf("\n"); } return OK; } while(p!=q){ Car car=*(q); printf("\t车牌: %d",car.CarNum); printf("\t\t到达时间:%5.2f",car.time); printf("\t\t位置:%d",l++); printf("\n");

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

数据结构课程设计 《停车场管理》 班级: 姓名: 学号: 设计日期:2012年7月2日——2012年7月11日

1)需求分析 本次的数据结构课程设计所选的题目是停车场管理系统。根据题目要求,已知停车场是一个可停放n辆汽车的狭长通道,只有一个大门可供汽车出入,由此可将停车场的类型定义为栈,其容量为n。当停车场已经停满n辆车后,后来的车辆只能在便道上等待。当停车场内有车开走,便道上的第一辆汽车便可以进入停车场中。根据其先入先出的特点,可以将便道的类型定义为队列,容量不限。由题目可知,需停车辆的信息包括:车牌号码、汽车“到达”“离去”的信息、“到达”“离去”的时刻等。按照从终端读入的数据序列进行模拟管理。每辆车需要三个数据,其中车辆数据为:A表示到达,D表示离去,E表示程序结束。车辆牌照号码为整型数据,车辆到达或离开的时刻同样为整型数据。输入车辆到达应该输出的信息为:汽车在停车场内或便道上的停车位置;输入车辆离开应该输出的信息为汽车在停车场内停留的时间和应交纳的费用(在便道上停留的时间不收费)。 停车场管理系统主要实现以下几个功能: (1)根据车辆到达停车场到车辆离开停车场时所停留的时间进行计时收费。 (2)该程序设计能够通过车牌号能查到该车辆在停车场或便道中的位置。 (3)当有车辆从停车场离开时,等待的车辆按顺序进入停车场停放。实现停车场的调度功能。 该程序设计可以完整的模拟停车场的管理过程。 2)概要设计 停车场管理系统是充分利用数据结构中栈和队列的思想实现的,栈是一种只能在叫做栈的一段进行进栈或者出栈操作的线性数据结构。栈的主要特点是”后进先出”,即后进栈的元素先处理。停车场的容量即为栈的存储空间,停车场的车辆的停靠是无秩序的,因此采用链式存储的方式更适合,也方便车辆的调度。 队列是限定仅能在表的一端进行插入,在表的另一端进行删除的线性表。队列中可以插入的一端称为队尾,可以删除的一端称为队首。把一个元素插入队列中的操作为进队,队列中删除一个元素的操作为出队。队列存取操作符合:先进先出。停车场的车辆到达停车和车辆的离开的管理方式就是采用队列的“先进先出”的移动的思想。停车场的入口就是队列的队首,停车场的出口就是队列的队尾。 停车场管理系统流程图如图1所示。

停车场管理系统课程设计报告 最终版

目录 1 实习目的 (1) 2 问题描述 (1) 3.1 设计基本要求 (1) 3.2 停车场管理系统的主要功能 (2) 4概要设计 (2) 4.1设计思想 (2) 4.2函数及功能要求 (3) 5 详细设计 (4) 5.1 数据结构的设计 (4) 5.2 算法的设计思想及流程图 (5) 5.2.1 主要函数的功能说明 (5) 5.2.2 停车场管理系统流程图 (6) 5.2.3 主要模块算法描述 (8) 6 测试分析 (8) 6.1 测试用例 (8) 6.1.1 第一组测试用例 (8) 6.1.2 第二组测试用例 (10) 6.1.3 第三组测试用例 (11) 6.2 测试结果分析 (12) 7 使用说明 (12) 8 总结 (13) 参考文献 (15) 附录 (16)

停车场管理系统 1 实习目的 通过本次课程设计,了解并初步掌握设计、实现系统的完整过程,包括系统分析、编码设计、以及调试分析,熟练掌握数据结构的选择、设计、实现以及操作方法,为进一步的应用开发打好基础。 2 问题描述 停车场是一条可以停放n辆车的狭窄通道,且只有一个大门。汽车停放安到达时间的先后依次由北向南排列(大门在最南端,最先到达的第一辆车停在最北端)若停车场已经停满n辆车,后来的汽车在便道上等候,一旦有车开走,排在便道上的第一辆车可以开入;当停车场的某辆车要离开时,停在他后面的车要先后退为他让路,等它开出后其他车在按照原次序开入车场,每两停在车场的车要安时间长短缴费。 3 需求分析 停车场是一条可以停放n辆车的狭窄通道,且只有一个大门。汽车停放按到达时间的先后排列。若停车场已经停满n辆车,后来的汽车在便道上等候。一旦有车开走,排在便道上的第一辆车可以开入;当停车场的某辆车要离开时,停在他后面的车要先后退为他让路。等它开出后,其他车再按照原次序开入车场,每辆停在车场的车要按时间长短缴费。 3.1 设计基本要求 (1) 以栈模拟停车场,以队列模拟车场外的便道,按照从终端输入的数据序列进行模拟管理。每一组数据包括三个数据项:汽车“到达”或“离去”信息、汽车牌照号码、以及到达或离去的时刻。对每一组数据进行操作后的信息为:若是车辆到达,则输出汽车在停车场的内或便道上的位置:若是车辆离去则输出汽车在停车场内的停留时间和应缴纳的费用(在便道上的停留时间不收费)。栈以顺序结构实现,队列以链表结构实现。 (2) 友好性:界面要友好,输入有提示,尽量展示人性化。 (3) 可读性:源程序代码清晰、有层次,必要时给出注释。 (4) 健壮性:用户输入非法数据时,系统要及时给出警告信息。 (5) 测试数据:要求使用全部合法数据、整体非法数据、局部非法数据进行程序测试,以保证程序的稳定。测试数据及测试结果请在上交的资料中写明。

停车场系统管理软件

深圳市德立达科技有限公司 TCP200停车场管理系统 Version 使 用 说 明 书 2014年4月23日 目录

TCP200停车场管理系统使用说明书........................ 错误!未定义书签。第一章概述.......................................... 错误!未定义书签。 系统特点........................................ 错误!未定义书签。 系统主要功能.................................... 错误!未定义书签。第二章配置系统...................................... 错误!未定义书签。 安装包相关说明.................................. 错误!未定义书签。 软件安装说明.................................... 错误!未定义书签。 登陆后台管理系统................................ 错误!未定义书签。 后台管理界面详解................................ 错误!未定义书签。 配置服务器IP 地址............................... 错误!未定义书签。 配置收费电脑IP地址.............................. 错误!未定义书签。 配置车库........................................ 错误!未定义书签。 获取和设置控制器IP地址.......................... 错误!未定义书签。 配置入口、出口控制器IP地址及车库等.............. 错误!未定义书签。 基本设置相关.................................... 错误!未定义书签。第三章账户管理...................................... 错误!未定义书签。 添加账户........................................ 错误!未定义书签。 账户管理........................................ 错误!未定义书签。 权限设置........................................ 错误!未定义书签。第四章费率设置...................................... 错误!未定义书签。 设置费率........................................ 错误!未定义书签。 添加节假日...................................... 错误!未定义书签。

停车场管理系统程序设计书

停车场管理系统程序设计书 一、程序设计目标 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).用户根据系统所规定并提示的要求输入有关内容,车场所能容纳的车辆数由收费人员来确定,车辆离开时,车主还可以得到收据,便于收费的管理使用,并且系统程序所提供的一些信息可通过特殊硬件显示出来,供车主了解信息,准确有效的停车。

停车场管理系统课程设计报告

停车场管理系统课程设计 报告 Revised by BETTY on December 25,2020

重庆科技学院 《面向对象程序设计》 课程设计报告 学院:_ 电气与信息工程学院_ 专业班级: 计科12-04 学生姓名: 田园学号: 设计地点(单位)________计算机自主学习中心 ___ _____ 设计题目:_____ _ 停车场管理系统__ ____ 完成日期: 2013 年1月18日 指导教师评语: ______________________ __ _______________ _______________________________________________________________ _______________________________________________________________ _______________________________________________________________ ____________ __________ _ 成绩(五级记分制):______ __________ 指导教师(签 字):________ ________ 摘要

当今社会,停车场管理电脑化已经成为了停车场管理的不可缺少的一项重要内容,随着停车车辆的不断增加,停车场对停车的管理越来越复杂,所以要实现对停车的正确管理是必不可少的。本次课程设计就是为了对停车基本的信息及其停车费用的管理做一个简单的表现,主要实现对停车的信息录入,修改,删除,显示,添加,查找等几个方面的功能。而要实现这些功能,首先要建一个数组,将所有停车的信息都统筹起来,而且通过C++建立类的方式完成这些过程,并且能准确明显的显示每辆停车的基本信息和对其资费的管理。通过如此对停车的管理,可以达到对停车信息的准确管理。 关键词:停车场管理数组 C++ 类

停车场管理系统软件工程课程设计报告

软件工程试卷(论文) 2014-2015学年第1学期 题目停车场管理系统的分析和设计 学生姓名:王琦 系另 1」:信息与计算科学系 专业年级:2012级计算机科学与技术 指导教师:刘兆辉 2015年1月1日 第一章项目概述 (3) 1.1开发背景 (3) 1.2开发目的 (3) 1.3开发运行境 (3) 1.4系统功能 (3) 第二章需求分析 (4)

2.1 系统需求 (4) 2.2功能需求 (4) 2.3业务流图 (4) 第三章总体设计 (6) 3.1基本设计概念和处理流程 (6) 3.2系统层次模图 (6) 第四章数据库计 (7) 4.1数据库的逻辑设计 (7) 4.2数据库的配置 (10) 第五章详细设计 (13) 5.1主菜单模块的设计与实现 (13) 5.2初始化模块的设计与实现: (14) 5.3车辆进入模块的设计与实现 (14) 5.4车辆离开并收费模块的设计与现 (15) 第六章测试及提交 (16) 七附:模块源代码 (17) 参考文献 (20) 第一章项目概述

1.1开发背景: 近年来,随着我国经济的快速发展,人们生活水平的不断提高,物质需求和生活方式也发生着深刻的变化,以前属于奢侈品的汽车己经逐步走入了市民的日常生活。伴随汽车消费大众化和各种机动车辆大范围内的迅速普及,车辆对其配 套设施特别是停车场提出了更高的要求。停车是"速度为零的交通”,停车场及附属相关设施是静态交通的重要组成部分。停车场收费管理系统是伴随着公用收费停车场这一新生事物而诞生的。目前的多数停车场存在着以下几个问题,管理 漏洞、系统的可靠性、独立性强、收费过程比较繁琐、劳动强度高、停车场利用率低下、票款易流失等。针对这些问题该停车场系统从以下方面进行设计。针对管理进行了优化,采用划卡消费和现金支付相结合,系统计时计费。采用Java 高级编程语言和WEB相关技术开发设计管理系统软件,实现网络管理操作。优化后的系统使用方便、服务高效、收费透明、防止票款的流失,提高可靠性同时也提高了操作者的工作效率。 1.2开发目的: 随着计算机技术的发展,在各行各业的应用越来越广泛,停车场管理由原来的人工管理进入计算机系统管理那是个必然趋势,计算机系统管理可以大大提高管理的效率和正确性设有一个可以停放n辆汽车的狭长停车场,它只有一个大门可以供车辆进出。车辆按到达停车场时间的早晚依次从停车场最里面向大门口处停放(最先到达的第一辆车放在停车场的最里面)。如果停车场已放满n辆车,则后来的车辆只能在停车场大门外的便道上等待,一旦停车场内有车开走,则排在便道上的第一辆车就进入停车站。停车站内如有某辆车要开走,在它之后进入停车场的车都必须先退出停车站为它让路,待其开出停车场后,这些车辆再依原来的次序进场。每辆车在离开停车场时,都应根据它在停车场内停

相关文档
最新文档