编写一个用来统计输入的各个数字、空白符、其他字符的数量

问题遇到的现象和发生背景

编写一个用来统计输入的各个数字、空白符、其他字符的数量

问题相关代码,请勿粘贴截图

int main()
{
int x = 0, y = 0, z = 0;
char c=0;
while (c = getchar() != EOF)
{
if (c >= '0' && c <= '9')
{
++x;
}
if (c == ' ' || c == '\n' || c == '\t')
{
++y;
}
else
{
++z;
}
}
printf("这串字符中数字有%d个 空白符有%d个 其他字符有%d个", x, y, z);
}

运行结果及报错内容

img

我想要达到的结果

不是应该6 1 0吗,请解答一下

修改见注释,供参考:

#include <stdio.h>
int main()
{
    int x = 0, y = 0, z = 0;
    char c = 0;
    while ((c = getchar()) != EOF) //while (c = getchar() != EOF) 修改
    {
        if (c >= '0' && c <= '9')
        {
            ++x;
        }
        else if (c == ' ' || c == '\n' || c == '\t')  //修改
        {
            ++y;
        }
        else
        {
            ++z;
        }
    }
    printf("这串字符中数字有%d个 空白符有%d个 其他字符有%d个", x, y, z);
    return 0;
}