涉及双值的比较不能正常工作

时间:2017-03-02 09:38:59

标签: c++ double

有时即使不满足条件也会执行if语句。条件涉及双重值:

if (percentage < 10.0) cout << " ";

我在程序中使用这行代码并运行它应输出如下内容:

Frequency of outcomes: Outcome 1: 10.08 % Outcome 2: 10.15 % Outcome 3: 9.98 % Outcome 4: 10.00 % Outcome 5: 9.88 %

但事实恰恰相反:

Frequency of outcomes: Outcome 1: 10.08 % Outcome 2: 10.15 % Outcome 3: 9.98 % Outcome 4: 10.00 % Outcome 5: 9.88 %

如您所见,即使10.00不小于10.00,if语句仍会执行。为什么会这样?

这是我的代码:http://codepad.org/Ikt85kZc

0 个答案:

没有答案