描述
在n x n方针里填入1,2,……,nxn,要求填成蛇形。例如,n=4时方阵为:
10 11 12 1
9 16 13 2
8 15 14 3
7 6 5 4
实现代码
#include
<stdio.h>
#include
<string.h>
#define maxn
20
int a
[maxn
][maxn
];
int main(){
int n
, x
, y
, tot
= 0;
scanf("%d", &n
);
memset(a
, 0, sizeof(a
));
tot
= 1;
x
= 0;
a
[0][n
-1] = 1;
y
= n
-1;
while(tot
< n
*n
){
while(x
+1 < n
&& !a
[x
+1][y
]) a
[++x
][y
] = ++tot
;
while(y
-1>=0 && !a
[x
][y
-1]) a
[x
][--y
] = ++tot
;
while(x
-1>=0 && !a
[x
-1][y
]) a
[--x
][y
] = ++tot
;
while(y
+1<n
&& !a
[x
][y
+1]) a
[x
][++y
] = ++tot
;
}
for(x
= 0; x
< n
; x
++)
{
for(y
= 0; y
< n
; y
++){
printf("=", a
[x
][y
]);
}
printf("\n");
}
return 0;
}
转载请注明原文地址:https://blackberry.8miu.com/read-18704.html