求解答一下为什么输入一行字符以后,按回车没有反应?

#include<stdio.h>
int main()
{
char a;
int c=0,s=0,n=0,o=0;
while(scanf("%c",&a)!=EOF)
{
if(a>='a'&&a<='z'||a>='A'&&a<='Z')
c++;
else
if(a==' ')
s++;
else
if(a>='0'&&a<='9')
n++;
else
o++;
}
printf("characters=%d\nspaces=%d\nnumbers=%d\nothers=%d\n",c,s,n,o);
return 0;
}

按回车没用,回车也是字符。你得输入CTRL+Z才行