US Bee 2021-04-01 10:19 采纳率: 89.5%
浏览 26
已采纳

java结构体问题 基础算法题-哪里错啦

//如果有个二维数组代表迷宫如下,0表示道路,2表示墙壁:
//
//假设老鼠会从索引(1,0)开始,请使用程序找出老鼠如何跑至索引
//
//(6,5)位置
public class Day401ArrayMaze {
    public static void main(String[] args) {
        int[][] maze = {{2,2,2,2,2,2,2},
                        {0,0,0,0,0,0,2},
                        {2,0,2,0,2,0,2},
                        {2,0,0,2,0,2,2},
                        {2,2,0,2,0,2,2},
                        {2,0,0,0,0,0,2},
                        {2,2,2,2,2,0,2},
        };

        int x,y;
        int i = 1;
        int j = 0;
        for (int k = 0; k < 10; k++) {
            if (maze[i][j+1]==0){
                i = i;
                j = j++;
                System.out.println("路");
            }else if (maze[i+1][j]==0){
                i = i++;
                j = j;
                System.out.println("墙");
            }else{
                System.out.println("小老鼠没能走出迷宫");
            }

        }if (i==6&&j==5){
            System.out.println("小老鼠走出迷宫了");
        }


    }

}
//运行结果
路
路
路
路
路
路
路
路
路
路
  • 写回答

2条回答 默认 最新

  • CPoet 2021-04-01 10:34
    关注

    你i和j的值没有改变,原地打转。去看一下前置自增和后置自增。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?