c中判断输入是字符还是数字的有关问题,请高手帮帮忙
c中判断输入是字符还是数字的问题,请高手帮帮忙!
最近在一本书上看到如下代码:
#include<stdio.h>
#include<math.h>
#include<stdlib.h>
#include<process.h>
void main()
{
int i;
scanf("%d",&i);
if(i==0) //如果输入的是字符
exit(0);
else
printf("%d",i);
}
(原来的程序比较复杂,这里我简化了)
请我用红色表示的那一行为什么可以判断输入是否是字符?
------解决方案--------------------
------解决方案--------------------
ret=scanf("%d",&n);
看看scanf的返回值是成功读入的次数 如果是字符是不能成功读入按"%d"读入的。ret的值就为0,
最近在一本书上看到如下代码:
#include<stdio.h>
#include<math.h>
#include<stdlib.h>
#include<process.h>
void main()
{
int i;
scanf("%d",&i);
if(i==0) //如果输入的是字符
exit(0);
else
printf("%d",i);
}
(原来的程序比较复杂,这里我简化了)
请我用红色表示的那一行为什么可以判断输入是否是字符?
------解决方案--------------------
------解决方案--------------------
ret=scanf("%d",&n);
看看scanf的返回值是成功读入的次数 如果是字符是不能成功读入按"%d"读入的。ret的值就为0,