#include<stdio.h>#include<ctyp
c4droid吧
全部回复
仅看楼主
level 5
启蒙自己
楼主
#include<stdio.h>
#include<ctype.h>
int main ()
{
int a;
scanf ("%d",&a);
if (isdigit(a)==0)
printf("如果是数字就输出:a=%d",a);
}
2023年11月18日 15点11分
1
level 5
启蒙自己
楼主
难道中文也是数字?英文字母就为什么不能输出而且,一直到输入数字才会结束?谁能告诉我
2023年11月18日 15点11分
2
是吗也许未必
你已经定义a为int,那么scanf只能接收int。你输入的如果不是int,就不会改变a的值。 比如你先定义int a=10。 那么不管你怎么输入,a都不会改变,始终为10。 而isdigit是用来判断字符类型的,也就是char类型。 你把一个int类型放进去,当然认为“不是数字”,所以返回0。
2024年05月23日 12点05分
是吗也许未必
而你if又是==0,当然就每次都输出了。
2024年05月23日 12点05分
1