Zliczanie słów w programowaniu łańcuchowym

Muszę napisać funkcję, która będzie liczyć słowa w łańcuchu. Dla celów tego przypisania „słowo” jest zdefiniowane jako ciąg znaków innych niż białe, spacji bez białych znaków, oddzielonych od innych słów przez białe znaki.

Oto, co mam do tej pory:

int words(const char sentence[ ]);

int i, length=0, count=0, last=0;
length= strlen(sentence);

for (i=0, i<length, i++)
 if (sentence[i] != ' ')
     if (last=0)
        count++;
     else
        last=1;
 else
     last=0;

return count;

Nie jestem pewien, czy działa, czy nie, ponieważ nie mogę go przetestować, dopóki cały mój program nie zostanie zakończony i nie jestem pewien, czy to zadziała, czy jest lepszy sposób pisania tej funkcji?

questionAnswers(12)

yourAnswerToTheQuestion