电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

数据结构 课程设计报告

19页
  • 卖家[上传人]:第***
  • 文档编号:78872544
  • 上传时间:2019-02-15
  • 文档格式:DOC
  • 文档大小:99.38KB
  • / 19 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、院 系: 计算机科学技术学院 班 级: # 姓 名: # 学 号: # 合 作 者: # 指导教师: # 2015 年 12 月 8 日 数据结构课程设计任务书数据结构课程设计任务书 一、题目:迷宫制作设计 二、设计要求 1 # 组成设计小组。 2小组成员分工协作完成设计任务。每人应完成自己相对独立的模块,并读 懂其他组员的模块,一般每人的程序量应在 80 行以上。不得抄袭。 3设计应具有多个功能独立的模块,完成相应的功能。 4主菜单不应是简单菜单,最好具有 dos 界面的特点。 5数据必须存盘,数据量必须足够多,并采用真是数据。 三、课程设计工作量 由于是设计小组团结协作完成设计任务,一般每人的程序量应在 80 行 有效程序行以上。不得抄袭,否则给不及格成绩。 四、课程设计工作计划 2015 年 11 月 25 上午由葛建梅指导教师讲课,学生准备文献资料; 2015 年 11 月 25 下午日2015 年 12 月 8 日上午,各设计小组进行总体方案设 计和任务分工; 2015 年 12 月 8 日下午2015 年 12 月 9 日 每人完成自己承担的程序模块并通 过独立编译。 20

      2、15 年 12 月 9 日,验收,学生撰写课程设计报告。 指导教师签字: 数据结构课程设计指导教师评语 指导教师评语: 表现成绩: 验收成绩: 报告成绩: 总成绩: 指导教师签字: 年 月 日 摘摘 要要 我们组做的迷宫游戏用 C 语言的 Graphics 函数画出迷宫的游戏界面 为了是的 游戏有良好的效果每次都采用了随机生成函数,每次的迷宫都是随机生成的,采用 MapRand 随机生成迷宫函数。主要功能方面我们组实现了两个功能:人工探索和机 器智能探索。人工探索和机器智能探索都采用了八个方位是的游戏有更好的用户体 验。八个方位分别为上下左右,和两个对角线即左上左下右上和右下。其中机器智 能探索用二维数组实现了数据结构中的栈的思想,本游戏以数据结构为指导思想而 完成的。 本游戏我们小组应用了 Graphics 函数画出了迷宫游戏的界面边框并利用结构 体将探索物的路径的延伸过程完成,利用 FindWay 函数和 DrawPeople 函数作出随 机探索路径,并用交换坐标的方式来实现探索路径的形成,利用 MapRand 函数随机 生成迷宫地图,并且利用 WayCopy 函数来实现地图的更替

      3、,并通过 Result 函数判 断是否找到出路,若返回值为 1,记录分数,游戏设计完毕。 关键词:c 语言;迷宫; graphics 库函数;栈的思想 ABSTRACTABSTRACT Our group to do the maze game using Graphics language of the C function to draw a maze of the game interface in order to play a good effect every time using a random generating function, each of the maze is randomly generated, the use of MapRand randomly generated maze function. The main functions of our group to achieve two functions: artificial exploration and intelligent robot exploration are used in

      4、eight aspects of the game has a better user experience.The eight directions are about the upper and lower left and right, and the left and right of the left and right of the left and right. The machine intelligence explores the idea that the data structure is realized by using the two dimensional array. This game we use the Graphics function to draw a maze game interface and the use of the structure to explore the path of the extension process, the use of FindWay function and DrawPeople function

      5、 to make a random exploration path, and to explore the way to explore the path of the formation, the use of MapRand function to generate a maze map, and use the WayCopy function to achieve the map, and to determine whether to find a way through the Result, if the return value is 1, the game design is completed. Keywords: c language; Maze; Graphics library function;Stack thought 目 录 1 1 程序的功能设计程序的功能设计1 1 2 2 程序的数据设计程序的数据设计2 2 3 3 程序的函数设计程序的函数设计3 3 4 4 函数编程及调试函数编程及调试4 4 5 5 整体调试整体调试1010 6 6 总结总结11

      6、11 参考文献参考文献1212 致致 谢谢1313 0 1 程序的功能设计程序的功能设计 我们的程序主要调用了 graphics 内函数来将游戏的界面设计出来,并利用结 构体将探索物的路径的延伸过程完成,利用 FindWay 函数和 DrawPeople 函数作出 随机探索路径,并用交换坐标的方式来实现探索路径的形成,利用 MapRand 函数随 机生成迷宫地图,并且利用 WayCopy 函数来实现地图的更替,并通过 Result 函数 判断是否找到出路,输出得分,清屏,此程序结束。 迷宫设计 设计游 戏主页 面 画出迷 宫图以 及探索 初始位 置 设计地 图的随 机出现 设计地图 的更替, 并判断是 否路途正 确 弹出游戏 结束界面, 并输出得 分,清屏 设计 游戏 背景 调用 setcolo r 函数 设计游 戏边框 调用 map 函 数 利用 坐标, 宏定 义和 switch 函数 调用 MapRan d 函数 利用 WayCopy 函 数更替地图, 并用 Result 函 数判断是否 正确 调用 outtextxy 函数等有关颜 色背景设计函 数,清屏调用 cleardevic

      7、e 函 数 图 1 迷宫功能模块图 1 2 程序的数据设计程序的数据设计 我们定义了一个二位数组 int oldmapNN,利用来存储随机生成的迷宫数 组,并利用对其操作实现对迷宫的探索过程;我们在这里还使用了一个变量 yes 来 表示是否找到迷宫的出路,如果找到迷宫的出路的话就将 yes 设置为 1,如果没有 找到出路就让其为零,在这里我们初始化 int yes 为零; 因为我们的迷宫是利用一个个小方块组成的,所以我们声明了 int way100 2这个二维数组,利用将我们找到的出路的路线的坐标存在这个数组当中,以便 最后显示这条通路时来用,我们还声明了 int mapNN这个二维数组,利用在起 初生成迷宫的时候,我们还在这里面声明了一个 wayn 这个变量,利用保存我们走 的这条通路的路线中的方块个数,在后面我们要显示自动探索路线的时候需要用的 这个 wayn 变量,用其来跑 for 循环以便显示出这条路线;在本次迷宫的设计中, 我们还定义了一些小的变量,用来进行迷宫中的一些小的操作:定义了一个 ch 的 字符变量,用来在我们刚开始执行迷宫的时候对其进行选择是自动探索还是人工探 索

      8、,定义了 x,y,i,j 这几个小的 int 类型的变量用来表示其方位的坐标,在我 们人工探索的时候对其探索路线进行操控的时候进行使用,通过对 x,y 进行+和- -操作来完成按键控制移动的效果;以上内容就是我们组在本次课程设计迷宫中所 做的数据设计内容。 2 3 程序的函数设计 我在设计我负责的部分的时候,利用了栈的算法原理实现了路径的自动探索功 能,本处我利用了数组来实现这个一算法,当电脑自动探索的时候,走过的地方初 次探索时,将会以入栈的方式被放入到数组中,如果走的这条路走不通,将会在以 出栈的方式往回倒退回去,以此循环步骤,直到最终判断出是否有走通的道路为止。 3 4 4 函数编程及调试函数编程及调试 我负责的是迷宫设计中的自动探索迷宫出路的部分,主要用到了栈的算法思想 和递归调用自动寻找路线函数来完成的本部分内容,我主要是利用了二维数组来模 拟实现了栈的这一个算法,当自动寻找路线的时候,先把走过的部分入栈,存到那 个二维数组中,利用下坐标+的方法,当如果走的那条路走不通的时候,就利用出 栈的思想,把下坐标利用- -的方式退回来,在进行另外一段的寻找,直到找到一 条通路或者确定

      9、没有通路位置(就是把所有能走的路线都走过了)时为止,最后把 能够走通的路线存在这个二维数组当中,下面是我这部分的代码: void WayCopy(int (*oldmap)N,int (*map)N)/*拷贝迷宫数组 */ int i,j; for(i=0;iN;i+) for(j=0;jN;j+) oldmapij=mapij; int FindWay(int (*map)N,int i,int j)/*递归找路*/ if(i=N-2/*标志为 1,表示成功*/ return; mapij=1;/*走过的地方变为 1*/ WayCopy(oldmap,map); /*拷贝迷宫图*/ if(oldmapi+1j+1=0 if(yes)/*如果到达出口了,再把值赋给显示路线的 way 数组,也正是这个原因, 4 所以具体路线是从最后开始保存*/ waywayn0=i; waywayn+1=j; return; WayCopy(oldmap,map); if(oldmapi+1j=0 if(yes) waywayn0=i; waywayn+1=j; return; WayCopy(oldmap,map); if(oldmapij+1=0 if(yes) waywayn0=i; waywayn+1=j; return; WayCopy(oldmap,map); if(oldmapi-1j=0 5 if(yes) waywayn0=i; waywayn+1=j; return; WayCopy(oldmap,map); if(oldmapi-1j+1=0 if(yes) wayw

      《数据结构 课程设计报告》由会员第***分享,可在线阅读,更多相关《数据结构 课程设计报告》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2 2022年小学体育教师学期工作总结 2022年家长会心得体会集合15篇
     
    收藏店铺
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.