Advertisement
Toliak

pureC2

Oct 26th, 2018
307
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.98 KB | None | 0 0
  1. #include <stdio.h>
  2.  
  3. int wcount(char *s)
  4. {
  5.     int words = 0;                      // Результат
  6.     unsigned char isSpace = 0;          // Был ли пробел - предыдущим символом
  7.     int wordLength = 0;
  8.     while (*s != '\0') {                // Пока не нашли конец
  9.         if (*s == ' ') {
  10.             if (isSpace == 0 && wordLength != 0)
  11.                 // Если текущий символ пробел и до этого не было пробела
  12.                 words++;
  13.             isSpace = 1;
  14.             wordLength = 0;
  15.         } else {
  16.             isSpace = 0;
  17.             wordLength++;
  18.         }
  19.         s++;
  20.     }
  21.  
  22.     if (isSpace == 0 && wordLength != 0)             // Обрабатываем последнее слово (если это не пробел)
  23.         words++;
  24.     return words;
  25. }
  26.  
  27. int main()
  28. {
  29.     char str[512];
  30.     gets(str);
  31.     printf("Result: %d\n", wcount(str));
  32.     return 0;
  33. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement