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

C 语言课程设计报告 ——停车场管理 1 班 级: 192102 学 号: 20101003907 姓 名: 聂 彪 指导教师: 张冬梅 时 间: 2011 年 6 月 7 日C 课程设计报告 1 目录 一、 题目及要求 二、 题目及要求 三、 题目及要求 四、 题目分析 五、 数据结构说明 六、 各函数算法分析 七、 程序测试 八、 课程设计感悟与收获 九、 源代码C 课程设计报告 2 一、题目及要求 [要求] 设有一个可以停放 n 辆汽车的狭长停车场,它只有一个大门可以供车辆进出。车辆按到达 停车场时间的早晚依次从停车场最里面向大门口停放(最先到达的第一辆车放在停车场的 最里面) 。如果停车场已放满 n 辆车,则后来的车辆只能在停车场大门外的便道上等待,一 旦停车场内有车开走,则排在便道上的第一辆国就进入停车场。停车场内如有某辆车要走, 在它之后进来的车都必须退出停车场为它让路,待其开出停车场后,这些车辆再依原来的 次序进场。每辆车在离开停车场时,都应根据它在停车场内停留的时间长短交费。如果停 留在便道上的车未进停车场就要离去,允许其离去,不收停车费,并且其他在便道上等待 的车辆的次序不变。编制一程序模拟停车场管理。 [提示] 汽车的模拟输入信息格式可以是:(到达/离去,汽车牌照号码,到达/ 离去时刻) 。 例如:(’A’,1,5)表示 1 号牌照车在 5 这个时刻到达,而(’D’ ,5,20)表示 5 号 牌照车在 20 这个时刻离去,整个程序可以在输入信息为(’E’,0,0)时结束。 基本要求:要求程序输出每辆车到达后的停车位置(停车场或便道上) ,以及某辆车 离开停车场时应交的费用和它在停车场内停留的时间。 根据题目要求,停车场可以用一个长度为 n 的堆栈来模拟。由于停车场内如有某辆车 要开走,在它之后进来的车都必须先退出停车场为它让路,待其开出停车场后,这些车辆 再依原来的次序进场。所以可以设两个堆栈。 二、题目分析 由于停车场是一个狭窄通道,而且只有一个大门可供汽车进出,问题要求汽车在停车 场内按车辆到达时间的先后顺序,依次由北向南排列。由此很容易联想到用结构体数组来 存储车库信息。又每个汽车的车牌号都不一样,这样一来就可以根据车牌号准确找到汽车 位置。当停车场内某辆车要离开时,在他之后进入的汽车必须再按原次序进入车库。这是 一个一退一进的过程,而且让道的汽车必须保持原有的先后顺序,因此可再设计一个结构 体数组,用来暂时存放为出站汽车暂时让道的汽车车牌号。当车库满后,继续进来的汽车 需要停放在车库旁边的便道上等候,若车库满后,继续进来的汽车需要停放在车库旁边的 便道上等候,若车有汽车开走,这完全是一个先进先出模型,因此可以设计一个队列来模 拟便道,队列中的数据元素仍然设计成汽车的车牌号。另外,停车场是根据汽车在停车场 内停放的总长来收费的,在便道上的时间不计费,因此必须记录车辆进入车库时的时间, 车辆离开车库时的时间不需要记录,当从终端输入时可直接使用。 另外,题目提示中的表示方法[(’A’ ,1,5)表示 1 号牌照车在 5 这个时刻到达]有两 点不好;一、对用户友好程度不高,用起来并不方便;二、不接近实际情况,生活中表示 时间的格式为“--:--” ,完全可以建立一个时间结点来实现。因此,实际编程中将对这一 方面予以优化。 三、数据结构说明 根据题意,停车场中的空间分为车库和便道。这里用结构体来模拟车库和便道,按照 从端读入数据序进行管理。模拟车库和模拟便道中分别用结构体数组和链表来存储车辆信 息。 模拟车库和模拟便道的数据结构如下表 1 和表 2 所示:C 课程设计报告 3 char num[10] int hour Time reach 结构体 int min int hour CarNode *stack[MAX+1] 结构体数组 Time leave 结构体 int min Moni_cheku 结构体 int top 表 1 模拟车库的数据结构 char num [10] int hour Time reach 结构体 int min int hour CarNode *data 数组 Time leave 结构体 int min QueueNode *head 链表 Struct car *next char num [10] int hour Time reach 结构体 int min int hour CarNode *data 数组 Time leave 结构体 int min Moni_biandao 结构体 QueueNode *rear 链表 Struct car *next 表 2 模拟便道的数据结构 用 C 语言实现这一部分为: 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; }Moni_Cheku; typedef struct car { CarNode *data; struct car *next; C 课程设计报告 4 }QueueNode; typedef struct Node { QueueNode *head; QueueNode *rear; }Moni_Biandao; 四、各函数算法分析 (1)主函数 void main() { Moni_Cheku Enter,Temp; Moni_Biandao Wait; int ch;InitStack( /*初始化车站*/InitStack( /*初始化让路的临时链表*/InitQueue( /*初始化便道*/printf(“\n“);printf(“ ^_^ 欢迎进入停车场管理系统 1!^_^\n“);printf(“\n“);printf(“提示! (1). 该车库的最大容量为:%d;\n“ ,MAX);printf(“ (2).该车库的收费标准为:%4.2f 元/ (辆*分钟).\n“,price);while(1) {printf(“********************主菜单********************\n“);printf(“1.车辆到达“); printf(“ 2.车辆离开“); printf(“ 3.列表显示“); printf(“ 4.退出系统\n“); printf(“**********************************************\n“);printf(“请选择(1-4):[ ]\b\b“);while(1) {scanf(“%d“, if(ch>=1 else printf(“ 错误!请重选(1-4):[ ]\b\b“);} switch(ch) { case 1:Arrival(

停车场管理系统C语言作业,c语言课程设计报告停车场管理系统相关推荐

  1. 通讯录管理系统C语言课程设计大作业,c语言课程设计报告---通讯录管理系统.doc...

    c语言课程设计报告---通讯录管理系统.doc Yangtze University College of Arts and Science 学生实习手册 (课程设计报告) 学 部 理 工 学 部 专 ...

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

    <数据结构课程设计报告停车场管理系统>由会员分享,可在线阅读,更多相关<数据结构课程设计报告停车场管理系统(8页珍藏版)>请在人人文库网上搜索. 1.数据结构课程设计报告系 别 ...

  3. java班级管理系统用到数据库_java班级管理课程设计报告--班级管理系统.docx

    java班级管理课程设计报告--班级管理系统 <Java程序设计>课程设计报告课设题目: 班级管理系统 学院:信息技术工程学院 专 业:计算机科学与技术 目 录1 引言11.1 开发背景及 ...

  4. java学生课程设计报告,Java课程设计报告学生管理系统

    Java课程设计报告学生管理系统 JAVAJAVA 程序设计程序设计 课程设计报告课程设计报告 课课 题题 学生信息管理系统学生信息管理系统 姓姓 名名 学学 号号 设计时间设计时间 2014.6.2 ...

  5. 车辆管理系统c语言课程设计报告,图书馆管理系统C语言课程设计报告

    湖北科技大学程序设计课程设计报告项目名称: 图书馆管理系统学生名称: 朱捷学生编号: 2014117241班级: 软工作者1411指导老师: 龚雄星日期: 2016.2.251项目描述设计图书管理系统 ...

  6. 足球赛积分管理系统c语言,足球赛计时计分器课程设计报告.doc

    足球赛计时计分器课程设计报告 2013-2014学年第二学期 <单片机原理与接口技术> 课程设计报告 专业班级:自动化11-2 姓 名:高 宇 马立峰 指导老师:李 莉 基于MSP430f ...

  7. 计算信源熵和香农编码C语言,信息论与编码课程设计报告-统计信源熵与香农编码.pdf...

    信息论与编码课程设计报告 设计题目: 统计信源熵与香农编码 专业班级 电 信 12-06 学 号 学生姓名 指导教师 教师评分 2015 年 3 月 30 日 目 录 - 0 - 一.设计任务与要求 ...

  8. 基于html人事管理报告,基于C++builder的课程设计报告 (人事管理系统)

    内容介绍 原文档由会员 bshhty 发布 C++builder课程设计 ( 人事信息管理系统 ) 12页 7000余字 资料包含:完整课程设计报告,源代码等相关设计资料.本课程设计为RAR个文件. ...

  9. c语言程序设计银行卡管理系统,C语言课程设计报告-银行卡管理系统.doc

    银行卡管理系统 一.题目要求 请设计<银行卡管理系统>,要实现系统的主要功能模块有: 实现系统内制卡.发卡功能: 实现系统内卡帐户几相关帐户管理: 实现卡交易和合法性检查: 实现卡金融交易 ...

最新文章

  1. 股票自动交易python下单接口_用 Python 写了个简单的股票量化交易框架
  2. leetcode_zigzag conversion
  3. php文件管理器工具,八年PHP文件管理器
  4. Machine Learning On Spark——基础数据结构(一)
  5. 一张图看懂AI、机器学习、深度学习的关系
  6. 结巴分词关键词相似度_辨别标题党--提取关键词与比较相似度
  7. echarts 按需引入模_【React】react项目引入echarts插件
  8. 【优化算法】金鹰优化算法(GEO)【含Matlab源码 187期】
  9. android 添加字幕,字幕添加器app-字幕添加器安卓版v2.0.1 - 起点软件园
  10. 在线URL编码加密工具
  11. matlab绘制二元函数,matlab绘制二元函数z=x∧2+y∧2,y=0,y=x∧2,z=0的图像
  12. 8.5 Polytopes (多面体)
  13. linux编写守护进程
  14. 需求文档 | 商业需求文档(BRD)
  15. scratch自制积木
  16. 【疑难解决】RTMP视频推流功能组件EasyRTMP-HIK DEMO版本运行报错0xc000007b排查分析
  17. 写给《中国品牌日》:梦想不远 未来可期 为每一个农业品牌人鼓掌
  18. 【考研英语】六步精读法
  19. matlab系统解列模块,基于MATLAB准同期装置建模与仿真-毕设论文.doc
  20. Vite+Vue3+ElementUI-Plus中全局配置中文

热门文章

  1. 对View DrawingCache的理解
  2. GNN和GGNN学习笔记
  3. Entity Framework应用:导航属性
  4. Centos7 free命令详解
  5. vps管理--批量远程桌面管理
  6. Speedoffice(PPT)如何修改幻灯片版式
  7. 车险保单在线OCR识别,字段很全,可以可以
  8. 轻松5个步骤,解决企业内训师建设难题
  9. 埃拉托斯特尼筛法 the Sieve of Eratosthenes method
  10. 高级控件——列表类视图——基本适配器BaseAdapter