简易迷宫游戏c++

 1 #include<iostream>
 2 #include<cstdio>
 3 #include<cmath>
 4 #include<cstdlib>
 5 #include<algorithm>
 6 #include<cstring>
 7 #include<ctime>
 8 #include<windows.h>
 9 #include<conio.h>
10 #define tab system("cls")
11 using namespace std;
12 string a[101];
13 int n=10,m=10,k,x=1,y=1;
14 
15 void out()
16 {
17     int i,j;
18     for(i=1;i<=n;i++)
19     {
20         for(j=0;j<=m;j++)
21         {
22             cout<<a[i][j]<<" ";
23         }
24         cout<<endl;
25     }
26     return;
27 }
28 
29 bool judge(int x,int y)
30 {
31     if(x<1||y<0)return 0;
32     if(x>10||y>10)return 0;
33     if(a[x][y]=='*')return 0;
34     return 1;
35 }
36 
37 int main()
38 {
39     int i,j;
40     a[1]="*@*********";
41     a[2]="* *   *   *";
42     a[3]="* * * * * *";
43     a[4]="* * * * * *";
44     a[5]="* * * * * *";
45     a[6]="* * * * * *";
46     a[7]="* * * * * *";
47     a[8]="* * * * * *";
48     a[9]="*   *   * *";
49     a[10]="********* *";
50     out();
51     char c;
52     for(;;)
53     {
54         c=getch();tab;
55         if(c=='w')
56         {
57             if(judge(x-1,y))
58             {
59                 swap(a[x-1][y],a[x][y]);
60                 x--;
61             }
62         }
63         if(c=='a')
64         {
65             if(judge(x,y-1))
66             {
67                 swap(a[x][y-1],a[x][y]);
68                 y--;
69             }
70         }
71         if(c=='s')
72         {
73             if(judge(x+1,y))
74             {
75                 swap(a[x+1][y],a[x][y]);
76                 x++;
77             }
78         }
79         if(c=='d')
80         {
81             if(judge(x,y+1))
82             {
83                 swap(a[x][y+1],a[x][y]);
84                 y++;
85             }
86         }
87         out();
88         if(x==10&&y==9)
89         {
90             tab;
91             cout<<"YOU WIN";
92             Sleep(2000);
93             getch();
94             break;
95         }
96     }
97     return 0;
98 }
原文地址:https://www.cnblogs.com/freedomchaser/p/5806923.html