【问题描述】螺旋方阵,是指对任意给定的n,将1到n×n的数字从左上角第一个格子开始,按顺时针螺旋方向顺序填入n×n的方阵里(向内螺旋)。输入一个正整数,输出螺旋方阵的外边内容(仅输出外边内容,有能力的同学可考虑输出整个螺旋方阵)。
【输入形式】一个正整数n(n小于等于6)
【输出形式】螺旋方阵外边。
【样例输入】5
【样例输出】
1 2 3 4 5
16 0 0 0 6
15 0 0 0 7
14 0 0 0 8
13 12 11 10 9
#include <stdio.h>
int main()
{
int r,c,n,i=1;
scanf("%d",&n);
static int a[6][6];
for (c=0; c<n; c++) {
a[0][c]=i;
i++;
}
for (r=1; r<n; r++) {
a[r][n-1]=i;
i++;
}
for (c=n-2; c>=0; c--) {
a[n-1][c]=i;
i++;
}
for (r=n-2; r>=1; r--) {
a[r][0]=i;
i++;
}
for (r=0; r<n; r++) {
for (c=0; c<n; c++) {
printf("%4d",a[r][c]);
}
printf("\n");
}
}