#include <stdio.h>
int main () {
int n;
scanf("%d",&n);
int array[n][n], lu, rd, i, num = 1;
/* lu is left/up, rd is righth/down */
for (lu = 0, rd = n - 1; lu <= rd; ++ lu, -- rd) {
for (i = lu; i <= rd; ++ i) {
array[lu][i] = num ++;
}
for (i = lu + 1; i < rd; ++ i) {
array[i][rd] = num ++;
}
for (i = rd; i > lu; -- i) {
array[rd][i] = num ++;
}
for (i = rd; i > lu; --i) {
array[i][lu] = num ++;
}
}
int j;
for (i = 0; i < n; ++ i) {
for (j = 0; j < n; ++ j) {
printf("%d",array[i][j]);
if (j == n - 1) continue;
printf(" ");
}
printf("\n");
}
}
C語言作業|螺旋方陣
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.