#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的判斷不用使用==