C语言 如何判断一个浮点数是不是整数(说法不太严格)

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/05 16:55:15
C语言 如何判断一个浮点数是不是整数(说法不太严格)

C语言 如何判断一个浮点数是不是整数(说法不太严格)
C语言 如何判断一个浮点数是不是整数(说法不太严格)

C语言 如何判断一个浮点数是不是整数(说法不太严格)
C语言里浮点数和整数的操作和表示都不相同,这种说法很不严格,所以如何判断,就看你自己的定义啦.
我的理解是,如果一个浮点数可以分为整数部分和小数部分,那么你想判断一个浮点数是不是跟它的整数部分基本相同,严格一点说就是误差很小.这样的话,你可以这么写:
double err = 1e-10; //先自己定义误差
x = 2.9999999997;
if (abs(int(x)-x)< err) // 和它整数部分误差的绝对值是否小于规定的误差
...