Программа не считает количество пробелов в строке - C (СИ)

Формулировка задачи:

Добрый день! Программа компилируется, подсчитывает количество строк и табуляцию, но пробелы не считает. Подскажите, в чем ошибка?
#include <stdio.h>
 
main()
{
    int c, sp, tab, st;
    sp = 0; //spaces
    tab = 0; //tabulation
    st = 0; //strings
    
    while ((c = getchar()) != EOF) 
        if (c == '\n') //подсчет символов новой строки
            ++st;
        if (c == ' ') //подсчет пробелов
            ++sp;
        if (c == '\t') //табуляция
            ++tab;
            
    printf("Spaces %d\nTabulation %d\nStrings %d\n", sp, tab, st);
 
        getch();
    return 0;
}

Код к задаче: «Программа не считает количество пробелов в строке - C (СИ)»

textual
    while ((c = getchar()) != EOF) 
    {
        if (c == '\n') //подсчет символов новой строки
            ++st;
        if (c == ' ') //подсчет пробелов
            ++sp;
        if (c == '\t') //табуляция
            ++tab;
    }

9   голосов, оценка 3.667 из 5


СОХРАНИТЬ ССЫЛКУ