long int потому что кол-во атлетов до 100000, int недостаточно.
Практически на всех современных компиляторах (gcc - точно) int - 32 бита. Часто long int того же размера, но может быть и 64 бита, и тогда Ваш код будет работать неправильно из-за неправильного формата scanf и printf. Если уж используете long, то добавьте флаг l (маленькая L) к формату d: scanf("%ld", &num).
И научитесь пользоваться qsort. Если нет на то веских причин, то лучше использовать готовые стандартные функции, чем писать свои - ошибок меньше. Скорее всего и работать быстрее будет, т.к. стандартный qsort - не примитивный вариант, как у Вас, а содержит разные оптимизации типа выбора среднего элемента.