Когда вы читаете число, используя scanf ("% d", ....) , новая строка, набранная после номера, все еще там, ожидает в буфере ввода, когда ваша программа позже добирается до получает . Строка, которая получает чтение, будет очень короткой и состоит только из этой новой строки.
Не используйте fflush (stdin) , так как это не гарантируется стандартом для работы. Вместо этого вы можете просто читать символы в цикле, пока не пропустите символ новой строки:
while (getchar() != '\n')
;
Есть и некоторые другие проблемы с вашим кодом, среди которых вы вообще не должны использовать get, поскольку он не проверяет, что строка, которую вы читаете, действительно помещается в переменную. Вместо этого используйте fgets .