c语言中,怎样比较两个浮点数是否相等,比如说float 和 double型的?
答案:4 悬赏:60
解决时间 2021-03-02 21:16
- 提问者网友:空白
- 2021-03-02 15:34
c语言中,怎样比较两个浮点数是否相等,比如说float 和 double型的?
最佳答案
- 二级知识专家网友:闲懒诗人
- 2021-03-02 17:12
两个值相减的绝对值小于某个阈值, 比如1E-6(0.000001)...
比如:
float a = 1.2324(随便写的值);
double b = 2.5345345;
if(abs(a - b) < 1e-6)
则认为a和b相等...
比如:
float a = 1.2324(随便写的值);
double b = 2.5345345;
if(abs(a - b) < 1e-6)
则认为a和b相等...
全部回答
- 1楼网友:茫然不知崩溃
- 2021-03-02 19:39
#include <math.h>
double a1,a2;
....
if (fabs(a1-a2)<1e-6) puts("a1==a2");
- 2楼网友:何以畏孤独
- 2021-03-02 19:16
转换类型有这个语句的,比如我设个float x 如果我想把这个变量转换成double
就可以这样写 (double*)x 公式为(要转换的类型*)变量,记住就可以了,以后什么都能转换,这叫强制转换
- 3楼网友:错过的是遗憾
- 2021-03-02 18:52
一般编译器,会处理float == float 的,应该直接写if (a == b)就可以吧,如果你还在使用很早以前DOS下的编译环境那就只能差小于某一个值了
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯