사용자가 입력하는 수 n을 받아서  

arr[n][n]형 배열을 만든후 

달팽이 모양으로 1부터 수를 채울려고 해서 아래와 같이 선언했는데요.


int arr[1][1];

n값 받은후

arr[n][n]; 


arr[n][n]형으로 선언하려면 메인함수 첫 부분에 

2차원 배열을 arr[1][1]  이런식으로 2차원 길이를 미리 선언해줘야 한다고 알고 있습니다.

그런데 arr[1][1] 이런식으로 하고 수를 채워 넣으면 제대로 안들어가네요;;

변수를 넣는게 문제가 되는 줄 알고 상수로 


int arr[1][1]; 

이렇게 선언후 밑에다 

arr[5][5]={

{1, 2, 3, 4, 5},

{6, 7, 8, 9, 10},

{11, 12, 13, 14, 15},

{16, 17, 18, 19, 20},

{21, 22, 23, 24, 25}

};

이런식으로 선언해봤는데 역시 안되네요;;


사용자로부터 변수 n을 받아서 2차원 배열 arr[n][n] 배열을 만드는 방법이 없을까요?