首页 > 解决方案 > 如何从 C++ 中的整数除法返回双精度数?

问题描述

我有一段 C++ 代码。我的问题是如何从以下代码返回 1.5 而不是 1。

double avg(int, int);
int main ()
{
    double average= avg(2, 1);
    cout << average;
}

double avg(int num1, int num2)
{
    double average = (num1 + num2)/2;
    return average;
}

标签: c++c++14

解决方案


只需将其中至少一个设为double

 double average = (num1 + num2)/2.0; // note 2.0 is a double

这将允许发生隐式转换并将所有内容转换为double.


推荐阅读