cpp平均值被截断

时间:2019-05-09 20:44:07

标签: c++ double

我编写了以下简单的cpp程序:

#include <iostream>
#include <string>
#include <vector>
#include "other_imported.hpp"
#include "imported.hpp"

using namespace std;
#define MAX_LINE_LENGTH 999

using namespace std;
int main(int argc, char const *argv[])
{
    cout << "here";
    pair<double, double> p(321979, 819366);
    cout << "total" << (p.first + p.second) << "\taverage: " << (p.first + p.second) / 2.0;
}

,当我运行它时,结果是: 总计1.14134e + 06平均:570672

我的问题如下: 尽管应该允许使用双精度数进行更精确的计算,但是对于如此小的数字,结果已经四舍五入了。为什么是这样?

0 个答案:

没有答案