Ci sono varie cose che non vanno:
- quello all'interno del corpo dell'if è un errore di distrazione, giusto?
- di default scanf() legge la stringa finché non incontra un whitespace (tra cui rientra il classico spazio), quindi se inserisci da tastiera la stringa "rosso verde", nel momento in cui vai a stamparla ti mostrerà la stringa "rosso". Il problema può essere risolto in vari modi, per esempio utilizzando la seguente sintassi:
scanf("%[^\n]s", s);
che dice a scanf() di leggere la stringa finchè non si incontra il carattere newline (ossia \n)
oppure utilizzando la funzione fgets(), la cui chiamata nel caso specifico sarebbe:
fgets(s, 1000, stdin);
- presumo tu sappia che una stringa termina col carattere terminatore di stringa (ossia \0), peccato però che per la stringa ss te ne sia dimenticato;
- infine la parte logica del programma (i due for in pratica) è completamente sbagliata... riflettici!
EDIT:
A scanso di equivoci, il mio post è riferito all'autore del topic!