Io non sono pratico delle liste...
Ma comunque per prendere in input una stringa usa :

gets(nomeStringa);

perche' scanf("%s",&nomeStringa);
non prende gli spazi...
Cioe' se tu inserisci Mario Rossi lui Prendera' solo Mario...