C语言---迷宫游戏 代码

原创 2015年11月18日 10:41:31
//10行10列的数组地图
char map[10][10] =
{
    //10行10列的数组地图
    {'#','#','#','#','#','#','#','#','#','#'},//0
    {'#','0',' ',' ',' ','#',' ','#',' ',' '},//1
    {'#','#',' ','#','#','#',' ','#',' ','#'},//2
    {'#','#',' ',' ',' ',' ',' ','#',' ','#'},//3
    {'#','#','#',' ','#','#',' ','#',' ','#'},//4
    {'#',' ','#',' ',' ','#',' ','#',' ','#'},//5
    {'#',' ','#',' ',' ','#',' ','#',' ','#'},//6
    {'#',' ','#',' ',' ','#',' ','#',' ','#'},//7
    {'#',' ',' ',' ',' ','#',' ',' ',' ','#'},//8
    {'#','#','#','#','#','#','#','#','#','#'},//9
    //0   1   2   3   4   5   6   7   8   9
};
//遍历数组
for (int i = 0; i < 10; i++)
{
    for (int j = 0; j < 10; j++)
    {
        printf("%c", map[i][j]);
    }
    printf("\n");
}

//初始坐标
int startX = 1;
int startY = 1;

//出口坐标
int endX = 1;
int endY = 9;

while (map[endX][endY] != '0')//如果最终位置不是0 就一直执行循坏 进行操作
{
    printf("请输入:w上,s下,a左,d右:\n");
    char choose = 0;; //w上 s下 a左 d右
    scanf("\n%c",&choose);
    
    switch (choose)
    {
        case 'w'://0向上走一格,行数-1,列数不变
            if (map[startX - 1][startY] != '#')
            {
                //0向上走一格,0原在的行和列的坐标的位置就等于‘ ’
                map[startX][startY] = ' ';
                //行数-1
                startX--;
                //此时的行数已经是原有的-1的行数了,0向上走了,所以那个坐标的位置就变成了0
                map[startX][startY] = '0';
            }
            break;//如果执行 跳出swich循环 打印操作后的数组地图
            
        case 's'://0向下走一格,行数+1,列数不变
            if (map[startX + 1][startY] != '#')
            {
                //0向下走一格,0原在的行和列的坐标就等于‘ ’
                map[startX][startY] = ' ';
                //行数+1
                startX++;
                //此时的行数已经是原有的+1的行数了,0向下走了,所以那个坐标的位置就应该变成0
                map[startX][startY] = '0';
            }
            break;//如果执行 跳出swich循环 打印操作后的数组地图
            
        case 'a'://0向左走一格,列数-1,行数不变
            if (map[startX][startY - 1] != '#')
            {
                //0向下走一格,0原在的行和列的坐标就等于‘ ’
                map[startX][startY] = ' ';
                //列数—1
                startY--;
                //此时的列数已经是原有的-1的列数了,0向左走了,所以那个坐标的位置就应该变成0
                map[startX][startY] = '0';
            }
            break;//如果执行 跳出swich循环 打印操作后的数组地图
            
        case 'd'://0向右走一格,列数+1,行数不变
            if (map[startX][startY + 1] != '#')
            {
                //0向右走一格,0原在的行和列的坐标就等于‘ ’
                map[startX][startY] = ' ';
                //列数+1
                startY++;
                //此时的列数已经是原有的+1的列数了,0向左走了,所以那个坐标的位置就应该变成0
                map[startX][startY] = '0';
            }
            break;//如果执行 跳出swich循环 打印操作后的数组地图
            
        default:
            break;
    }
    
    //打印操作后的地图结果图
    for (int i = 0; i < 10; i++)
    {
        for (int j = 0; j < 10; j++)
        {
            printf("%c", map[i][j]);
        }
        printf("\n");
    }
    
    //如果出口处等于0 程序结束
    if(map[1][9] == '0')
    {
        printf("牛逼...你通关了!\n");
    }
    
}



版权声明:本文为博主原创文章,未经博主允许不得转载。

迷宫游戏的程序源代码

  • 2010年05月22日 10:25
  • 2.64MB
  • 下载

C 迷宫游戏代码实现

###### #0## # ## # #  # # ##   # ###### 请控制小人移动;w.上    s.下    a.左    d.右    q.退出 #include #define C...
  • u014404513
  • u014404513
  • 2015年11月28日 22:29
  • 725

三维迷宫游戏(源代码及可执行文件)

  • 2014年11月13日 16:49
  • 49.3MB
  • 下载

C#源代码——迷宫游戏

  • 2009年08月21日 10:35
  • 5.42MB
  • 下载

汇编迷宫游戏代码

  • 2014年04月03日 22:19
  • 20KB
  • 下载

纯C语言写的:迷宫游戏

#include #include #include #define N 11 int main() { void maze(int,int);//迷宫图。 FILE *fp; int x=0...
  • u011131296
  • u011131296
  • 2013年12月12日 17:55
  • 2262

C迷宫源代码

转自:http://blog.csdn.net/qq352773277/article/details/8209513 #include #include #include #d...
  • a527606652
  • a527606652
  • 2013年01月27日 13:56
  • 1345

C语言小游戏—迷宫游戏的实现

通过C语言代码实现简单的迷宫游戏,附带简单的语音功能
  • qq_30922155
  • qq_30922155
  • 2015年10月23日 20:49
  • 855

c语言迷宫游戏代码

#include int grid[14][17]={ {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}, {0,0,1,0,0,0,1,1,0,0,0,1,1,1,1,1...
  • u014262702
  • u014262702
  • 2014年03月21日 16:37
  • 627

C语言走迷宫源代码

C语言走迷宫源代码 #include #include #include int main() {   char a[50][50]={"######",                  ...
  • ahalei
  • ahalei
  • 2014年03月05日 11:49
  • 3208
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C语言---迷宫游戏 代码
举报原因:
原因补充:

(最多只允许输入30个字)