迷宫游戏控制台版c++代码

  

本文实例分享了c++设计的一个可以调整大小的迷宫游戏,给定迷宫的入口。如果存在出口,程序能够显示行走的路径,并最终到达出口,并输出“成功走出迷宫”,如果不存在出口,程序也能够显示行走的过程,并最终回退到入口,并输出”回退到入口”。

     //这是一个迷宫游戏   # include   # include   # include m * (n - 1)) | | (((y + 1) % m)==0)))/*到达边界之前执行循环走迷宫*/{/*判断右的方向,如果右为“。”,则向右走*/if (x==1) z=y + m;   if (x==m) z=y-1;   if (x==- m) z=y + 1;   if (x==1) z=y m;/*右不为“。”时,向y的前方走*/如果(p [z]==' # ')   {/*判断y的前方,如果前为“。”,则向前走*/if (x==1) z=y + 1;   if (x==m) z=y + m;   if (x==- m) z=y m;   if (x==1) z=y-1;/*如果前方为“#”,要向左走*/如果(p [z]==' # ')   {/*判断左的位置*/if (x==1) z=y m;   if (x==m) z=y + 1;   if (x==- m) z=y-1;   if (x==1) z=y + m;/*如果左为“#”,为死路,需要向后走*/如果(p [z]==' # ') z=x;   }   }   p [z]=' x ',/*最后都要让z的位置为“x”,表示走过的痕迹*/showmaze (p, m, n);   cout<& lt; endl;   cout<& lt;“请按回车键移动:“;   cin.get ();   cout<& lt; endl;/*替换x, y实现当前位置的移动*/x=y;   y=z;   }   }   int main ()   {   int m, n, n/*是迷宫的阶数,由于输出窗口大小的限制,   n不能大于每行所能显示的字符个数*/cout<& lt;“陈伟航的迷宫游戏\ n我的迷宫可是很整洁的哦! ^ _ ^ \ n”& lt; & lt; endl;   cout<& lt;“这是一个可任意选择大小的迷宫,“& lt; & lt; endl;   cout<& lt;“每次生成的迷宫都不同。\ n " & lt; & lt; endl;   cout<& lt;“因为屏幕一次最多显示80个字符,\ n这里每个字符又占两格,”& lt; & lt; endl   & lt; & lt;“所以输入超过40阶就不好看啦。\ n虽然它还是对的。哈哈\ n”& lt; & lt; endl;   cout<& lt;“请依次输入迷宫的宽度米和高度n (m> 2、n> 2):“& lt; & lt; endl;/*可以进行多组数据的测试*/,而(cin>祝辞m>的在n)   {   char * a=mazegenerator (m, n);   showmaze (a, m, n);   cout

迷宫游戏控制台版c++代码