Функция scnaf считывает строку пока не найдет первый пробельный символ, и на этом моменте функция завершает свою работу. Для считывания всех символов воспользуйся функцией getchar().
Советую загрузить библиотеку cs50
https://cs50.readthedocs.io/library/c/ в ней есть всё необходимое для получения данных от пользователей. Документация к функциям из cs50.h
https://man.cs50.io/