#include <stdio.h>
#include <ctype.h>
int getWord(char str[], char** begin, char** end) {
for (; *str
&& !isalpha(*str
); ++str
) { ; } *begin = str;
for (; *str
&& isalpha(*str
); ++str
) { ; } *end = str;
return *end - *begin;
}
unsigned getCount(char text[]) {
unsigned cnt = 0;
char* begin, * end;
while (getWord(text, &begin, &end) > 0) {
cnt++;
}
text = end;
}
return cnt;
}
int main() {
char text[] = "This is test text.";
printf("%d\n", getCount
(text
));
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxjdHlwZS5oPgoKaW50IGdldFdvcmQoY2hhciBzdHJbXSwgY2hhcioqIGJlZ2luLCBjaGFyKiogZW5kKSB7CiAgICBmb3IgKDsgKnN0ciAmJiAhaXNhbHBoYSgqc3RyKTsgKytzdHIpIHsgOyB9CiAgICAqYmVnaW4gPSBzdHI7CgogICAgZm9yICg7ICpzdHIgJiYgaXNhbHBoYSgqc3RyKTsgKytzdHIpIHsgOyB9CiAgICAqZW5kID0gc3RyOwoKICAgIHJldHVybiAqZW5kIC0gKmJlZ2luOwp9Cgp1bnNpZ25lZCBnZXRDb3VudChjaGFyIHRleHRbXSkgewogICAgdW5zaWduZWQgY250ID0gMDsKICAgIGNoYXIqIGJlZ2luLCAqIGVuZDsKCiAgICB3aGlsZSAoZ2V0V29yZCh0ZXh0LCAmYmVnaW4sICZlbmQpID4gMCkgewogICAgICAgIGlmICh0b2xvd2VyKCpiZWdpbikgPT0gdG9sb3dlcigqKGVuZCAtIDEpKSkgewogICAgICAgICAgICBjbnQrKzsKICAgICAgICB9CiAgICAgICAgdGV4dCA9IGVuZDsKICAgIH0KICAgIHJldHVybiBjbnQ7Cn0KCmludCBtYWluKCkgewogICAgY2hhciB0ZXh0W10gPSAiVGhpcyBpcyB0ZXN0IHRleHQuIjsKCiAgICBwcmludGYoIiVkXG4iLCBnZXRDb3VudCh0ZXh0KSk7CgogICAgcmV0dXJuIDA7Cn0K