一、问题描述
设计一个迷宫游戏,给定迷宫的入口。如果存在出口,程序能够显示行走的路径,并最终到达出口,并输出"成功走出迷宫";如果不存在出口,程序也能够显示行走的过程,并最终回退到入口,并输出"回退到入口"。
二、提示
1.定义一个二维数组(MxN)表示一个迷宫,数组的元素为"#"或".", "#"表示迷宫里的墙,"."表示可以通行的过道。从入口进入迷宫后,只能沿着"."所代表的位置移动。
2.定义一个函数 mazeGenerator,用于生成任意大小的迷宫(即数组的宽度和高度由用户输入),要求生成的迷宫至少有一个不同于入口的出口。
3.定义一个递归函数mazeTraverse,用于实现走迷宫。该函数的形参应该包括表示迷宫的二维数组和迷宫的入口。函数中用字符‘X’表示已走过的路径,并输出每向前移动一步后迷宫的状态。
走迷宫的一个简单算法总能走到出口(如果有),如果没有出口,则会回到起始点。 算法具体表述如下: 将右手放在右边的墙上并开始前进,手不离墙,最终总能走到出口。当然,可能还有更短的路径,但上述路径总能走到出口。)
1. 先生成一个迷宫,所有的元素都是空: .
2. 随机选择两个边缘的点作为入口和出口, 把所有其它点都设为墙:#
3. 在迷宫内,随机设置一半的点为墙:#
高级:
4. 如果一定要迷宫有通路, 那么在第 2 步之后,可以随机生成一个从入口到出口的线路,确保这个线路不被第 3 步的随机的墙占据。
请问能给一些具体的代码参考吗😭没有思路改怎么用代码来实现