c语言-老鼠走迷宫逐步理解
c语言实现老鼠走迷宫 在没有智能手机的时代,不少人玩游戏会玩老鼠走迷宫这样的闯关游戏。每一关有着不同的地图场景,可能还会充斥着各种障碍。 老鼠走迷宫是经典的递回求解的算法题 我们用二维数组表示迷宫场景。其中用2代表迷宫的墙壁,0代表可行通道。 我们用7*7的二维数组具体实现,假定我们设置[1][1]是迷宫入口,[5][5]是迷宫出口。 #define M 7 int maze[M][M] = { {2,2,2,2,2,2,2}, {2,0,0,0,0,0,2}, {2,0,2,0,2,0,2}, {2,0,0,2,0,2,2}, {2,2,0,2,0,2,2}, {2,0,0,0,0,0,2}, {2,2,2,2,2,2,2} }; int start1=1,start2=1; int end1=5,end2=5; int main () { int i,j; printf("显示迷宫:\n"); for(i=0;i<M;i++) //对摆放的数组迷宫进行打印 { for(j=0;j<M;j++) if(maze[i][j] == 2) printf("◾"); else printf(" "); printf("\n"); } } 这样我们的迷宫绘制基本完成。下面我们对老鼠可能行走的路径进行分析输出。 我们定义一个visit函数,对老鼠行走方向进行逻辑分析