Это потому, что когда вы пишете scanf('%s')
, на входе test 1
%s
сканирует только первый пробел, и вход, который получает ваша программа, на самом деле только test
.
Полезной вещью с точки зрения отладки было бы сделать
printf("Error: %s", input)
Так что вы можете видеть, что scanf
получает вас.
Если вам нужны целые строки ввода, лучше использовать fgets()
.