标签:
思路就是:右-》下-》左-》上
#include<stdio.h>
#include<string.h>
int a[10][10];
int main()
{
int i,j, n, num=0;
memset(a, 0, sizeof(a));
scanf("%d", &n);
num=a[i=0][j=0]=1;
while(num < n*n)
{
while(j<n-1 && !a[i][j+1]) a[i][++j] = ++num; //右
while(i<n-1 && !a[i+1][j]) a[++i][j] = ++num; //下
while(j>=1 && !a[i][j-1]) a[i][--j] = ++num; //左
while(i>=1 && !a[i-1][j]) a[--i][j] = ++num; //上
}
for(i=0;i<n;i++){
for(j=0;j<n;j++)
printf("%3d ",a[i][j]);
puts("");
}
return 0;
}
标签:
原文地址:http://blog.csdn.net/jkxqj/article/details/45542773