2차 배열에 있는 숫자들을 정렬하고자 합니다.
숫자 6개를 입력받고 2 x 3 배열에 넣어주세요.
5 3 6 를 입력 받아서 1 2 3 으로 정렬해서 출력하기
1 3 2 3 5 6
해결안 )
2차원 배열 입력받기 int arr[2][3] ;
2차원 배열을 1차원 배열로 옮기기 int brr[6];
int t = 0;
for (int y = 0; y < 2; y++)
{
for (int x = 0; x < 3; x++)
{
brr[t++] = arr[y][x];
//1차원 배열 brr 만들어서 arr배열을 받는다.
}
}
brr배열을 정렬한다.
for (int y = 0; y < 5; y++)
{
for (int x = y + 1; x < 6; x++)
{
if (brr[y] > brr[x])
{
swap(brr[y], brr[x]);
}
}
}
for (int k = 0; k < 6; k++)
{
for (int y = 0; y < 2; y++)
{
for (int x = 0; x < 3; x++)
{
arr[y][x] = brr[k++];
}
}
}
5. arr 출력 .