#include
#include
int main()
{
char a;
int x=0,y=0,z=0;
while((a=getchar())!='\n')
{if(isalpha(a)==1)x++;
else if(isdigit(a)==1)y++;
else z++;
}
printf("字母数=%d,数字数=%d,其他字符数=%d\n",x,y,z);
return 0;
}
这段代码我输入aaaa 为什么输出的是其他字符是4??
#include
#include
int main()
{
char a;
int x=0,y=0,z=0;
while((a=getchar())!='\n')
{if(isalpha(a)==1)x++;
else if(isdigit(a)==1)y++;
else z++;
}
printf("字母数=%d,数字数=%d,其他字符数=%d\n",x,y,z);
return 0;
}
这段代码我输入aaaa 为什么输出的是其他字符是4??
isalpha(a) :判断字符ch是否为英文字母,若为小写字母,返回2,若为大写字母,返回1。若不是字母,返回0。
C语言中的if 的参数如果不是0就都为真,只有0才是假,所以if的判断不用使用==