- 1、本文档共18页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[2018年最新整理]c语言课程设计
成绩评定表学生姓名林野班级学号1309010117专业信息与计算科学课程设计题目1迷宫求解2求马鞍点数评语组长签字:成绩日期20 年 月 日课程设计任务书学 院理学院专 业信息与计算科学学生姓名林野班级学号1309010117课程设计题目1.迷宫求解 2.求马鞍点数实践教学要求与任务:要求:培养学生结构化程序设计的思想,加深对高级语言基本语言要素和控制结构的理解;独立完成有一定工作量的程序设计任务,同时强调好的程序设计风格;掌握C语言的编程技巧和程序设计的常用算法。任务:迷宫求解:在迷宫中求一条路径的算法。①构建一个二维数组maze[M+2][N+2]用于存储迷宫矩阵②自动或手动生成迷宫,即为二维数组maze[M+2][N+2]赋值③构建一个队列用于存储迷宫路径④建立迷宫节点struct point,用于存储迷宫中每个节点的访问情况⑤实现搜索算法⑥屏幕上显示操作菜单工作计划与进度安排:第一天:查阅相关资料; 第二、三天:程序与实现设计;第四天:程序调试、论文写作‘第五天:答辩。指导教师: 201 年 月 日专业负责人:201 年 月 日学院教学副院长:201 年 月 日摘要随着信息时代的发展,计算机语言运用越来越广泛。我们可以通过计算机语言解决生活中许多事情,例如解决一些数学问题和一些小娱乐。本次课程设计就是迷宫求解和求马鞍点数就充分体现了这两方面。C语言具有简洁,紧凑,使用方便灵活;运算符丰富;数据类型丰富;具有结构化的控制语句;语法限制不太严格,程序设计自由度大等特点,是可移植且结构良好的程序设计语言。本程序涉及到c语言中丰富的数据结构,包括整型,实型,字符型,及结构体类型,还有结构化的控制语句,体现了现代编程风格的要求。关键词:迷宫求解;马鞍点数;c语言;数据结构;1 需求分析1.1迷宫求解:在迷宫中求一条路径的算法。 (1) 建立一个大小为m×n的任意迷宫(迷宫数据可由用户输入或由程序自动生成),并在屏幕上显示出来;(2)找出一条通路的二元组(i,j)数据序列,(i,j)表示通路上某一点的坐标。(3)用一种标志(如数字8)在迷宫中标出该条通路;(4)在屏幕上输出迷宫和通路;1 .2求马鞍点的需求分析矩阵A中的元素若满足:A[i,j]是第i行中值最小的元素,且又是第j列中值最大的元素,则称元素A[i,j]为该矩阵的一个马鞍点,出m×n矩阵的所有马鞍点。2.算法流程图2.1迷宫求解2.1.1主函数Cycle=0While(cycle!=(-1))输入ii=1时,输入m,ni=2时,输入m,ncycle=(-1)输出你的输入有误!“While((m=0||m39)||(n=0||n39))While((m=0||m39)||(n=0||n39))重新输入重新输入调用shoudong_maze函数调用zidong_maze函数调用print_maze函数调用print_maze函数调用mgpath函数调用mgpath函数X!=0Y NX!=0Y N调用result_maze函数调用result_maze函数while(getchar()!=\n)while(getchar()!=\n)终止终止2.1.2zidong_maze函数for(i=0;im;i++)for(j=0;jn;j++)maze[i][j]=rand()%22.1.3print_maze函数for(i=0;im;i++)for(j=0;jn;j++)maze[i][j]==0输出□maze[i][j]==1输出■2.1.4 result_maze函数for(i=0;im;i++)for(j=0;jn;j++)maze[i][j]==0||maze[i][j]==2Y输出□maze[i][j]==1Y输出■maze[i][j]==3Y输出☆2.2马鞍点数3详细设计3.1迷宫求解#includestdlib.h#includestdio.h#define N 39#define M 39int X;int maze[N+2][M+2];struct point{introw,col,predecessor;}queue[512];int head=0,tail=0;voidshoudong_maze(intm,int n){inti,j;printf(\n\n);printf(请按行输入迷宫,0表示通路,1表示障碍:\n\n);for(i=0;im;i++)for(j=0;jn;j++)scanf(%d,maze[i][j]);}voidzidong_maze(intm,int n){inti,j;printf(\n迷宫生成中……\n\n);system(pause);for
您可能关注的文档
- [2018年最新整理]ch8-10.ppt
- [2018年最新整理]CH7聚类分析.ppt
- [2018年最新整理]ch8动态数列习题课.ppt
- [2018年最新整理]CH8一些特殊的图.ppt
- [2018年最新整理]CH7振动的测量.ppt
- [2018年最新整理]Ch8动态规划F.ppt
- [2018年最新整理]Ch8动态规划.ppt
- [2018年最新整理]ch8章-微观经济学应用.ppt
- [2018年最新整理]ch9-1基本概念.ppt
- [2018年最新整理]CH93全概率公式贝叶斯公式.ppt
- 基于人工智能教育平台的移动应用开发,探讨跨平台兼容性影响因素及优化策略教学研究课题报告.docx
- 高中生物实验:城市热岛效应对城市生态系统服务功能的影响机制教学研究课题报告.docx
- 信息技术行业信息安全法律法规研究及政策建议教学研究课题报告.docx
- 人工智能视角下区域教育评价改革:利益相关者互动与政策支持研究教学研究课题报告.docx
- 6 《垃圾填埋场渗滤液处理与土地资源化利用研究》教学研究课题报告.docx
- 小学音乐与美术教师跨学科协作模式构建:人工智能技术助力教学创新教学研究课题报告.docx
- 《航空航天3D打印技术对航空器装配工艺的创新与效率提升》教学研究课题报告.docx
- 教育扶贫精准化策略研究:人工智能技术在区域教育中的应用与创新教学研究课题报告.docx
- 《区块链技术在电子政务电子档案管理中的数据完整性保障与优化》教学研究课题报告.docx
- 《中医护理情志疗法对癌症患者心理状态和生活质量提升的长期追踪研究》教学研究课题报告.docx
文档评论(0)