Il problema è che esegui 2 volte la funzione "getChar()", per cui ti "perdi" il primo carattere che leggi.
Quello che dovresti fare è eseguire tale funzione una volta sola per ogni iterazione, salvandoti all'interno di una variabile il carattere appena letto.
Qualcosa del tipo:
char carattere;
for (c=0; (carattere=getChar())!=EOF; c++){
if (carattere == ' ') {
...
}
}