标签:
输入 4
10 11 12 1
9 16 13 2
8 15 14 3
7 6 5 4
#include <stdio.h> #include <iostream> #include <string.h> using namespace std; #define MAXN 10 int a [MAXN][MAXN]; int main() { int n=0,x=0,y=0,tot=0; scanf("%d",&n); memset(a,0,sizeof(a)); tot=a[x=0][y=n-1]=1; while(tot<n*n) { while(x+1<n&&a[x+1][y]==0) a[++x][y]=++tot; while(y-1>=0&&a[x][y-1]==0) a[x][--y]=++tot; while(x-1>=0&&a[x-1][y]==0) a[--x][y]=++tot; while(y+1<n&&a[x][y+1]==0) a[x][++y]=++tot; } for(x=0;x<n;x++) { for(y=0;y<n;y++) { printf("%3d",a[x][y]); } printf("\n"); } system("pause"); }
标签:
原文地址:http://www.cnblogs.com/zhuyaguang/p/4543659.html