public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个数:");
int num = sc.nextInt();
int[][] arr = new int[num][num];
int s = num * num;
//k=1向右 k=2向下 k=3向左 k=4向上
int k = 1;
int i = 0,j = 0;
for (int m = 1;m <= s;m++) {
if (k == 1) {
if (j < num && arr[i][j] == 0) {
arr[i][j++] = m;
} else {
k = 2;
i++;
j--;
m--;
}
} else if (k == 2) {
if (i < num && arr[i][j] ==0) {
arr[i++][j] = m;
} else {
k = 3;
i--;
j--;
m--;
}
} else if (k == 3) {
if (j >= 0 && arr[i][j] == 0){
arr[i][j--] = m;
} else {
k = 4;
i--;
j++;
m--;
}
} else if (k == 4){
if (i >= 0 && arr[i][j] == 0){
arr[i--][j] = m;
} else {
k = 1;
i++;
j++;
m--;
}
}
}
//遍历
for (int m = 0;m < arr.length;m++) {
for (int n = 0;n < arr[m].length;n++){
System.out.print(arr[m][n] + "\t");
}
System.out.println();
}
}