公园导游图

课 程 设 计 报 告

课程名称 数据结构

课题名称 公园导游图

专 业 计算机科学与技术

班 级 计算机070

学 号

姓 名

指导教师

2009年 10月 26日

湖南工程学院

课 程 设 计 任 务 书

课程名称 数据结构

课 题 公园导游图

专业班级 计算机070

学生姓名

学 号

指导老师 审 批

任务书下达日期 2009 年 10 月 8 日

任务完成日期 2009 年 11 月 8 日

1设计内容与设计要求

1.1设计内容

1.1.1 算术24游戏演示

由系统随机生成4张扑克牌,用户利用扑克牌的数字及运算符号“+”、“—”、“*”、“/”及括号“(”和“)”从键盘上输入一个计算表达式,系统运行后得出计算结果,如果结果等于24,则显示“Congratulation!”,否则显示“Incorrect!”

设计思路:从键盘输入中缀表达式,然后将中缀表达式转换为后缀表达式,利用后缀表达式求值。

1.1.2 迷宫探索

随机生成一个迷宫图,迷宫大小为N*N,N预定义为常数,修改N的值可以改变迷宫的大小。用白色表示可走的路,蓝色表示墙壁不可以通过。系统设计两种运行方式:一种是系统自动探索(用递归方法实现);另一种是由人工操作探索通路。

设计思路:程序首先要考虑迷宫的表示,这是一个二维关系图,所以可选择二维数组来存储。数组元素只有两种值0和1,分别代表通路和墙壁。图形的显示可以根据数组元素的值来确定。如果是人工探索,则依据按键来确定探索物的位置坐标,利用循环语句实现。如果是系统自动探索,可采用递归算法实现。

1.1.3 二叉树遍历演示

演示遍历二叉树的过程,所以首先建立二叉树,并用图形显示出树的形状。建立的过程是采用前序便利的方法来创建,设计两种生成树的方式:一种是系统随机生成,另一种是人工输入。考虑到屏幕界面的有限性,限定二叉树不超过5层,最多26个字符,输入字符小数点“.”代表NULL。初始树为某种颜色的结点,三种情况的遍历采用填充另外一种醒目的颜色,来表示当前遍历的结点,同时显示该结点的访问序号。同时在遍历的过程中在遍历图形的下方显示出遍历序列。

1.1.4 数组应用

按照行优先顺序将用户随机输入的数据建成2维数组并以图形方式逐步显示出来,然后再按照列优先顺序以图形方式逐步输出相应数组。

1.1.5 拓扑排序演示

演示拓扑排序的过程。按照有向图给出的次序关系,将图中顶点排成一个线性序列,对于有向图中没有限定次序关系的顶点,则可以人为加上任意的次序关系。要求每输出一个顶点后就演示从图中删去此顶点以及所有以它为尾的弧。

1.1.6 图的遍历

演示图的深度优先, 广度优先遍历过程,并输出原图结构及遍历结果。要求图的结点数不能少于6个。可以由系统随机生成图,也可以由用户手动输入图。报告中要写出画图的思路;画出图的结构,有兴趣的同学可以进一步改进图的效果。

1.1.7 八皇后问题演示

在8*8的棋盘上摆放8个皇后,使他们不在同一条对角线上和不在一行和列上。 ?解决8皇后时,在安放第i行皇后时,需要在列的方向从1到n试探(j =1,…, n):首先在第j列安放一个皇后,如果在列、主对角线、次对角线方向有其它皇后,则出现攻击,撤消在第j列安放的皇后。如果没有出现攻击,在第j列安放的皇后不动,递归安放第i+1行皇后。 该课题要求求解可能的方案及方案数并逐步演示摆放皇后的过程。

1.1.8 双链表创建演示

建立一个递增有序的双链表。功能是随机生成8个结点数据,每生成一个结点则申请空间得到一个指针,将数据存放到指针所指的数据域中,然后将结点插入到已经排好序的双链表中。所以第一步工作是判断新结点的插入位置,第二不演示插入过程中指针的变化,第三步显示插入后的链表结果。

1.1.9 公园导游图

给出一张某公园的导游图,游客通过终端询问可知:从某一景点到另一景点的最短路径。游客从公园大门进入,选一条最佳路线,使游客可以不重复地游览各景点,最后回到出口(出口就在入口旁边)。要求用图示展示最佳路径。

1.2 选题方案:

所选题目根据学号确定,学号模9加1,即(学号%9+1)。如你的学号为12,则所选题目号为:12%9+1=(题目4)。注意,所有的课题都要求用图形方式演示步骤和结果。有兴趣的同学可以自己针对数据结构课程中所讲算法来设计一个演示过程的算法,但

公园导游图c语言课程设计,公园导游图.doc相关推荐

  1. 网吧管理系统C语言作业,C语言课程设计-网吧管理系统.doc

    C语言课程设计-网吧管理系统 <通信工程专业C语言课程设计> 报 告 专 业: 通信工程 班 级: 0802 姓 名: 赵 松 指导教师: 丁 雄 二00九 年 十二 月 二十五 日 目 ...

  2. c语言作业素数探求实验题,c语言课程设计-素数探求.doc

    编号:31 C语言课程设计 学院 班级 设计人 __ 成绩 ____ 一.题目:素数探求 二.目的与要求 1.目的: (1)培养学生综合利用C语言进行程序设计的能力: (2)熟悉函数设计.循环的控制方 ...

  3. java致谢_JAVA语言课程设计致谢例文.doc

    JA V A语言课程设计致谢范文 JA V A语言课程设计的选题.探讨及报告的撰写均是在我们的指导教师的悉心指导下进行的.设计中的每一个环节无不凝聚着老师的心血.老师在课程设计方面有很多的实践经验,在 ...

  4. c语言订单管理,C语言课程设计订单管理系统.doc

    PAGE \* MERGEFORMAT41 C语言课程设计 随米打印订单管理系统 学 院: 计算机与信息科学学院 学生姓名: 谢润发 指导教师: 王新祥 职称 教授 专 业: 网络工程 班 级: 15 ...

  5. c语言课程设计走迷宫游戏,C语言课程设计-迷宫游戏.doc

    计算机技术基础课程设计 C语言 设计报告 题目:完整的二维迷宫游戏 学院:工商管理学院 专业:信息系统与信息管理 班级:050507 姓名:孙月 指导教师:张首伟 设计日期:2004年12月10日 题 ...

  6. c语言八个方向迷宫课程设计,【精品资料最新版】C语言课程设计-迷宫游戏.doc...

    计算机技术基础课程设计 C语言 设计报告 题目:完整的二维迷宫游戏 学院:工商管理学院 专业:信息系统与信息管理 班级:050507 姓名:孙月 指导教师:张首伟 设计日期:2004年12月10日 题 ...

  7. C语言输入年月日判断距今,C语言课程设计万年历打印.doc

    . . word完美格式 温馨提示 程序语言:C.C++.C#.Python(红色字体 表示本课设使用的程序设计语言) 图形功能选项:Win32控制台程序(黑框.文本界面).Win32程序.MFC.W ...

  8. c语言程序设计猜拳小游戏答辩,C语言课程设计猜拳游戏.doc

    C语言程序设计 课程设计(论文) 题目: 院(系): 专业班级: 学 号: 学生姓名: 指导教师: 教师职称: 起止时间: 课程设计(报告)任务及评语 院(系):软件学院 教研室:软件教研窒 学 号学 ...

  9. 潜艇大战c语言实验报告,计算机技术基础(c语言)课程设计-潜艇大战.doc

    计算机技术基础课程设计 C语言 设计报告 题目:简单潜艇大战 选题背景: 随着人们生活水平的提高,人们对精神生活的要求也随之提高了,当然,娱乐也成了人们生活中必不可少的一部分,为此,我用C语言编辑了一 ...

最新文章

  1. 不需要借助GPU的力量,用树莓派也能实时训练agent玩Atari
  2. 移动端图片上传旋转、压缩的解决方案
  3. FPGA之道(19)以FPGA为核心的开发板制作
  4. Java - 排序大全
  5. LeetCode 202 -- python 计算 happy number
  6. 借助Java 8和lambdas,可以一起使用AssertJ和Awaitility
  7. 树状数组的区间修改+查询
  8. 报错,null [org.springframework.web.method.annotation.MethodArgumentTypeMismatchException,Failed to con
  9. Codeforces初体验
  10. 齿轮箱常见故障数据_齿轮箱故障分析和维护使用
  11. Halcon——点胶机胶水路径应用(1)
  12. pandas不显示index_pandas层级索引
  13. 趣图图解 SOLID 软件开发原则
  14. 从零开始学数据分析,什么程度可以找工作?
  15. apollo 配置中心_Apollo 配置中心:分布式部署
  16. 基于PLC四层电梯模型控制系统课程设计
  17. 微信公众号迁移公证办理流程
  18. YouTube深度学习视频推荐系统
  19. Spring boot 搭建个人博客系统(六)——文章点击量和阅读排行榜
  20. TIA protal与SCL从入门到精通(6)——函数循环处理

热门文章

  1. ChatGPT能否取代Google、Baidu,成为下一代搜索引擎?一文了解最近火出圈的ChatGPT
  2. 上海工程技术大学本科毕业论文答辩和论文选题PPT模板
  3. 可以在xmind上同时有两个大主题吗_6大IPAD常用笔记软件横向对比,总有一款适合你|品职效率实验室...
  4. 李帅燕山大学计算机,燕山大学在第二届中国研究生机器人创新设计大赛中再获佳绩...
  5. MATLAB学习 矩阵分析(矩阵范数,秩, 行列式,迹, 化零矩阵)
  6. PPT中如何输入公式?
  7. 用 Python 写个贪吃蛇,保姆级教程!
  8. 有道云笔记android手写,有道云笔记Android新版发布 手写更逼真
  9. thinkphp5 mysql锁机制_thinkphp悲观锁机制处理高并发
  10. python画笑脸图案-python画个笑脸