1

我需要让用户使用 getchar 输入输入,并检查空格、换行符和其他字符的数量。

这是我的代码:

#include <stdio.h>

int main()

{

    char word;
    int spaces, newLines, theRest;
    spaces = 0;
    newLines = 0;
    theRest = 0;
    printf("please type an input:\n");

    while ((word = getchar() != '#'))
    {
        if (word == ' ')
            spaces++;
        else if (word == '\n')
            newLines++;
        else
            theRest++;
    }
    printf("number of spaces: %d, number of new lines: %d, other characters: %d", spaces, newLines, theRest);

}

对于我提供的任何输入,我只获得theRest包含所有字符的值。你能告诉我我在这里做错了什么吗?

4

1 回答 1

3
while (word = getchar() != '#')

应该:

while ((word = getchar()) != '#')
于 2013-01-27T23:05:46.087 回答