c语言课程设计作业迷宫问题求解哈希表查找的设计

c语言课程设计作业迷宫问题求解哈希表查找的设计

ID:6781457

大小:217.50 KB

页数:12页

时间:2018-01-25

c语言课程设计作业迷宫问题求解哈希表查找的设计_第1页
c语言课程设计作业迷宫问题求解哈希表查找的设计_第2页
c语言课程设计作业迷宫问题求解哈希表查找的设计_第3页
c语言课程设计作业迷宫问题求解哈希表查找的设计_第4页
c语言课程设计作业迷宫问题求解哈希表查找的设计_第5页
资源描述:

《c语言课程设计作业迷宫问题求解哈希表查找的设计》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、一设计题目迷宫问题求解任务迷宫问题是取自心理学的一个古典实验。实验中,把一只老鼠从一个没有顶的大盒子的门放入,在盒中设置了许多墙,对行进的方向形成了多处阻挡。盒子仅仅有一个出口,在出口处放置了一块奶酪,吸引老鼠在迷宫中寻找道路以到达出口。重复对老鼠进行上述实验,看老鼠能在多久找到出口。功能要求输入迷宫布局输出走出迷宫的路径图需求分析用以下测试数据,0表示可以行走的区域,1表示不可行走的区域。入口1000101101011011011001011110出口概要设计structpoint{introw;intcol;intpredecessor;}queue[5

2、12];voidmap_maze(intm,intn)voidresult_maze(intm,intn)voidenqueue(structpointp)structpointdequeue()intempty()voidvisit(introw,intcol,intmaze[20][20])intpath(intmaze[20][20],intm,intn)程序调用关系如下:主程序模块寻找路径模块输出迷宫及路径模块输入迷宫模块详细设计#include#includeintX=1;intmaze[20][20];int

3、head=0,tail=0;structpoint{introw;intcol;intpredecessor;}queue[512];voidmap_maze(intm,intn){inti,j;printf("输入迷宫(0为路1为墙):");for(i=0;i

4、"生成迷宫:");printf("入口");printf("↓");for(i=0;i

5、for(j=0;j

6、

7、maze[i][j]==2)printf("0");if(maze[i][j]==1)printf("1");if(maze[i][j]==3)printf("*");}}printf("→出口");}voidenqueue(structpointp){queue[tail]=p;tail++;}structpointdequeue(){head++;returnqueue[head-1];}intempty(){returnhead==tail;}voidvisit(introw,i

8、ntcol,intmaze[20][20]){structpointvisit_point={row,col,head-1};maze[row][col]=2;enqueue(visit_point);}intpath(intmaze[20][20],intm,intn){structpointp={0,0,-1};if(maze[0][0]==1){printf("##############################################################################");printf("迷宫

9、无解");X=0;return0;}maze[0][0]=2;enqueue(p);while(!empty()){p=dequeue();if((p.row==m-1)&&(p.col==n-1))break;if((p.row+1=0)&&(maze[p.row-1][p.co

10、l]==0))visit(p.row-1,p.col

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。