c语言 输入 数据 合法 检查

急!!!比如要输入ID(是整形),但是输入了字符或字符串该怎么检查!!!

哪位大虾,指点一下!,用什么函数,或什么方法? 谢谢啦!

第1个回答  2009-10-13
scanf()函数返回成功赋值的数据项数,出错时则返回EOF。

可以根据返回值来判断,如:

while(scanf("%d",&i)!=1){printf("bad input\n");fflush(stdin);}

参考资料:http://baike.baidu.com/view/1390039.htm

第2个回答  2009-10-14
scanf输入返回的是正确输入的个数,所以
int n = 0;
int num = scanf("%d", &n);
判断if(0 == num)
{
printf("输入错误");
}
以此类推,还可以判断%c等等本回答被提问者采纳
第3个回答  2009-10-13
你可以尝试输出:比如你要求输入整型,如后输出时也以整型输出!如果输入错误,肯定就得不到想要的输出结果!
第4个回答  2009-10-13
函数有个判断数字的函数,我忘了,给你写个简单的
if(c>='0'&&c<='9')
printf("是数字")
相似回答
大家正在搜