Как правильно сортировать файл?
Все правильно. Работа с файлом - на несколько порядков медленнее работы с памятью. Особенно медленен случайный доступ на hdd. Поэтому читать и писать по одному числу по разным адресам, как в сортировке, совсем медленно.

На практике, когда стоит задача сортировать файл, файл большой и в память целиком не помещается. Поэтому его читают кусками и как-то хитрят. Но чтение всегда делают большими кусками.
Не совсем ясно , чего хотел преподаватель.

Но для сортировки больших массивов ( которые много крат превышают оперативку ) используется сортировка слиянием - merge sort.