C++ 我想输入一个整数 如果输入的是小数就报错 怎么才能报错呢?

如题所述

思路:定义一个double型变量并输入,然后定义一个整型去装这个变量,因为整型不会存小数,只会取整数部分,然后判断这两个值是否相同,相同则为整数,不相同则为小数,此时报错;

具体代码如下:
#include <stdio.h>
#include <stdlib.h>
int main()
{
double d;
scanf("%lf",&d);
int a=d; //取整
if(a!=d)
{
printf("输入了小数,错误!!!\n"); //报错

}
else

{
//执行其他操作
}
return 0;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-11-02
设输入数字为 x,

将x 与

int(x) 以及 int(x)+1 作比较,,若和两者都不相等,,则可判断为小数..然后

if (是小数)
{做点别的;}本回答被提问者采纳
第2个回答  2015-12-28
我有一个比较笨的方法,判断小数点
第3个回答  2010-11-02
换个数据类型,用double
相似回答