scanf имеет неявное чтение до конца строки.Поскольку в строке формата у вас был символ '\ n', он считывал ваш первый возврат как часть формата.Затем он продолжал ждать '\ n', ожидаемого в качестве терминатора.Если бы вы предоставили другой токен с последующим возвратом, вы получите ожидаемые результаты.
Итак, если вы указали:
2
7
Вы получите вывод:
0
1
Поскольку первое число (2) сопоставлено с вашим первым спецификатором формата.В чем я не уверен, так это в том, почему вам нужно предоставить еще один токен (простое нажатие клавиши return в следующей строке не работает).Я предполагаю, что это потому, что scanf требует минимум один символ, не являющийся пробелом, но я могу ошибаться.