>>74に挑戦したけど結局できなかった・・・
>>89 getsでつまずきましたw
int first_word_len(char s[256]) {
  int len = 0, i;
  for (i=0; s[i]; i++) {
    if (len && s[i] == ' ') break;
    len++;//先頭の空白もカウント
  }
  return len;
}
int word_cnt(char s[256]) {
  int cnt = 0, word_len, total_len; char temp[256];
  strcpy(temp, s);
  while (1) {
    word_len = first_word_len(temp);
    if (word_len) {
      total_len += word_len;
      memset(temp, '\0', 256);
      memcpy(temp, &s[total_len], 256 - total_len);
      cnt++;
    } else { break; }
  }
  return cnt;
}
int main() {
  int cnt;
  //getsで受け取ると失敗する
  //char s[256]; gets(s);
  char s[256] = "Hello World word3 word4 word5";
  cnt = word_cnt(s);
  printf("cnt: %d\n", cnt);
}