1.题目
题目描述
给出一个不大于 99 的正整数 nn,输出 n\times nn×n 的蛇形方阵。
从左上角填上 11 开始,顺时针方向依次填入数字,如同样例所示。注意每个数字有都会占用 33 个字符,前面使用空格补齐。
输入格式
输入一个正整数 nn,含义如题所述。
输出格式
输出符合题目要求的蛇形矩阵。
输入输出样例
输入 #1
4
输出 #1
1 2 3 4 12 13 14 5 11 16 15 6 10 9 8 7
2.核心思想
1.已知方针向右、向下、向左、向上为一个循环周期,可用4个while语句分别判断某一方向何时终止。
2.某一方向的终止情况就两个:其一,该方向到头了;其二,“撞到了别的数”。
while(++j <= n && a[i][j] == 0)//向右 a[i][j] = t++; j--; while(++i <= n && a[i][j] == 0)//向下 a[i][j] = t++; i--; while(--j >= 1 && a[i][j] == 0)//向左 a[i][j] = t++; j++; while(--i >