/* 백업한 숫자를 기준으로 이전에 있는 값들과 비교하여 idx 값이 arr[i-1]의 값보다 작을 때까지 반복 즉, 삽입할 수보다 큰 수들이 안 나올 때까지 반복한다.*/ // 삽입할 수는 백업해뒀기 때문에 덮어씌워져도 되므로 // 한칸씩 뒤로 미뤄 정렬한다. for(j = i - 1; j >= 0 && arr[j] > idx; j--) { arr[j + 1] = arr[j]; } /* 위의 for 문이 돌고나면 삽입할 숫자의 위치가 나왔으므로 해당 위치에 삽입 위의 for문이 끝날 때 j--이 수행된다는 점을 참고*/ arr[j+1] = idx; }
for(int i = 0; i < 5; i++) { printf("%d ", arr[i]); } }