#include
using namespace std;
void mazeGenerator(char **&,int ,int,int,int ); //声明生成迷宫的函数
void mazeTraverse(char **& ,int ,int ,int ); //声明走迷宫的函数 int main() {int m,n;
cout<<\请输入迷宫的长和宽:\; cin>>m>>n;
char**a; //定义二维指针,记录二维数组 a=new char*[m];
for(int i=0;i a[i]=new char[n]; //申请二维动态数组 srand (int (time (0))); //调用种子函数,作为rand函数的启动值,参数为time(0)时间函数返回的系统当前时间 int p=rand()%(m-2)+1,q=rand()%(m-2)+1; //用随机数赋值给p、q,p记录入口位置,q记录出口位置 int k=p; //k记录走迷宫到达的位置,初始位置为入口 cout<<\迷宫生成:\< cout<<\现在进行走迷宫:\< void mazeGenerator(char**&a,int m,int n,int p,int q)//用于生成任意大小的迷宫,**&a引用二维指针数组, //m、n用于说明迷宫(数组)大小,p、q用于说明出入口的位置 {int i,j; for(i=0;i for(int i=1;i else a[i][j]='.';} a[p][0]='x',a[p][1]='.';a[q][n-1]='.',a[q][n-2]='.';
相关推荐: