Description
螺旋矩阵是形如下面的形式,当n=5n=5时,螺旋方阵如下:?
?????1? ?2? ?3? 4? ?5 ????16 17 18 19? 6 ????15 24 25 20? 7 ????14 23 22 21? 8 ????13 12 11 10? 9
Input
正整数?nn(1≤n≤101≤n≤10)
Output
n×nn×n的螺旋矩阵,要求矩阵中的每个数字保持2位长度,不足者加空格处理
Samples
Input?复制
5
Output
1 2 3 4 5
16 17 18 19 6
15 24 25 20 7
14 23 22 21 8
13 12 11 10 9?
Source
鲁东C语言实验5
#include <stdio.h>
#include <stdlib.h>
int main()
{
int N,p=1;
int n,i,j;
int a[10][10]={0};
scanf("%d",&N);
if(N%2!=0)
a[N/2][N/2]=N*N;
for(n=0;n<N/2;n++)
{
for(j=n;j<N-n-1;j++)
a[n][j]=p++;
for(i=n;i<=N-n-1;i++)
a[i][N-n-1]=p++;
for(j=N-n-2;j>=n+1;j--)
a[N-n-1][j]=p++;
for(i=N-n-1;i>=n+1;i--)
a[i][n]=p++;
}
for(i=0;i<N;i++)
{
for(j=0;j<N;j++)
if(j<N-1)
printf("%2d ",a[i][j]);
else
printf("%2d\n",a[i][j]);
}
}
|