#include <stdio.h>

int main(void)

{

int n;

printf("입력하시오 : ");

scanf_s("%d", &n);


int arr++;

int j=1;

int a = 0;

int b=0;


for (int i = 0; i < n;i++ )

{

if (i % 2 == 0)

{

for (int k = 0; k < n - i; k++)

{

arr[b][k + a] = j;

j++;


}

b++;

j += (n - i-1);

a++;

}


if (i % 2 != 0)

{

for (int k = 1; k < n -i+1; k++)

{

arr[n - b][n-(k+a)] = j;

j++;

}

j += (n - i-1);

}

}


a = 0;

j = n + 1;

b = 1;


for (int i = 0; i < n - 1; i++)

{

if (i % 2 == 0)

{

for (int k = 0; k < n - i - 1; k++)

{

arr[k + b][n-1-a] = j;

j++;


}

b++;

j += (n - i-1);

}

if (i % 2 != 0)

{

for (int k = 0; k < n -i-1; k++)

{

arr[n - (k+b)][a] = j;

j++;


}

j += (n - i-1);

a++;

}

}


for (int i = 0; i < n; i++)

{

for (int j = 0; j < n; j++)

printf("%d ", arr[i][j]);


printf("\n");

}


return 0;

}



코드가 더럽긴 하지만 어찌어찌 구현은 됩니다 ㅠㅠㅠ 감격이네요

ㅠㅠㅠㅠ