这个题目如何验证结果?求教?
看教程的时候,有一例子如下:#include <stdio.h>
void main( )
{
char c;
printf("input a character:");
c=getchar();
if(c<32)
{
printf("This is a control character\n");
}
else if(c>='0' && c<='9')
{
printf("This is a digit\n");
}
else if(c>='A' && c<='Z')
{
printf("This is a capital letter\n");
}
else if(c>='a' && c<='z')
{
printf("This is a small letter\n");
}
else printf ("This is an other character\n");
}
由于视频教程没有把该例子进行编译,所以我自己尝试一下验证结果。
输入数字1,会显示This is a digit。
输入字母A,a这些都出现相应的语句,没有问题。
然后我查过ascii码表,“!!”这个字符在码表中的十进制数字为19,于是我输入字符“!!”,但显示出来的却是This is an other character。
而字符“!”,在码表中的十进制数字为33,如果只输入“!”,是会显示出This is an other character。
这是因为,getchar只捉取到“!!”的第一个字符吗?
请问一下,怎样才能验证到c<32的情况?