第30381题 单选题
在C++常规数值计算场景下,要判断两个double类型浮点数a和b是否相等,以下哪种做法最合理?

本题默认无需处理NaN、无穷大等特殊浮点值,仅考虑常规有效数值范围的计算场景。

A

直接使用 if (a == b) 进行判断

B

使用绝对误差判断:if (fabs(a - b) < 1e-6)

C

使用相对误差判断:if (fabs(a - b) < fabs(a) * 1e-6)

D

结合绝对误差与相对误差判断:if (fabs(a - b) < max(1e-6, fabs(a) * 1e-6))

程序运行统计
暂无判题统计
提交0次 正确率0.00%
答案解析