杨辉三角,自己用二维数组写的总觉得哪里不对劲,这个if语句为什么<=3却在i=3时直接跳出循环求解

 //计算并输出杨辉三角
        int n;
        Scanner reader = new Scanner(System.in);
        System.out.println("请输入阶层:");
        n = reader.nextInt();
        int[][] M = new int[n][n];
        for (int i = 1; i <=n; i++) {
            M[i-1][0] = 1;
            System.out.print(M[i-1][0]+ "\t");
            for (int j = 2; j <=i; j++) {
                M[i-1][j - 1] = (M[i - 2][j - 2]) + (M[i - 2][j - 1]);
                System.out.print(M[i-1][j-1] + "\t");
            }
            System.out.println(" ");
        }

 

 我测试的时候没看见i=3时跳出循环 

能否看下你i=3时的 debug?