怎样 用C语言 判断一个数是不是整数

输入一个整数a

然后这个树经过了一些复杂的运算

得到了另一个数 b

就是说b=f(a)

写一下 判断b是不是整数的算法,谢谢了昂

如果用实型变量x接收一个数或通过计算得到一个数后要知道它是不是整数,没有很好的办法。因为实数在计算机中不能准确地存储,所以不能直接判断两个实型量(x,与表示整数的实型量,必须要同类型的量才能比较)是否相等,首先要明确能允许的误差是多少。比如,一般情况当误差的绝对值小于10的负8次方时我们可以认为两个实数是相等的。所以,要使用math库。
#include <math.h>
float x;
......
if(fabs(x-(int)x)<1e-8)printf("x是一个整数\n");
else printf("x不是一个整数\n");
温馨提示:内容为网友见解,仅供参考
第1个回答  2019-02-24
int(a)==a;
用int强制把要判断的那个数转换成整形,如果它们还相等···说明是整数···例如a=2.1的话int(a)就会等于2,而2.1!=2,所以不是整数···整数的话就会相等··
第2个回答  推荐于2017-09-05
int c=(int)b,d=(int)(b+0.9999999)
if(c==d)
{
//整数
}

//或者:
if(b-(int)b==0)
{
//整数
}

//整数和实数是不能直接比较的。本回答被提问者采纳
第3个回答  2020-02-11
对1取余等于0则说明为整数
或者
float a;
int b = (int) a;
if(a-b==0){//整数
}else{//小数
}
第4个回答  2007-04-04
if (b!=int(b))
相似回答