c++ - 与函数中的返回值不同的数据类型?

标签 c++

好吧,我对我为学校制作的程序有点困惑。程序执行,我得到了我想要的结果,但我只是觉得可以做得更好。在我的 findLowest() 函数中,它有一个 int 返回值。我在参数中传递给它的数据类型是 double。具有一种返回类型的函数可以有不同的数据类型参数吗?或者我应该说有没有更简洁的方法来做到这一点,也许是类型转换?我不会有问题,但发现最低需要由 calcAverage() 调用,这让我很困惑,因为如果我更改数据成员,那么显然正确的数据将不会传递到每个函数或从每个函数传递。这是程序的代码片段,感谢您提前提出任何想法,如果需要,它可以始终保持原样,它可以工作。

//function averages input test scores
void calcAverage(double score1, double score2, double score3, double score4, double score5)
{   
    //call to findLowest() function to decide which score to omit

        double lowest = findLowest(score1, score2, score3, score4, score5); 

        double average = ((score1 + score2 + score3 + score4 + score5) - lowest) / 4;

        cout << "Average is: " << average << endl;

}

//determines which input score is lowest 
int findLowest(double score1, double score2, double score3, double score4, double score5)
{

    double low = score1;    

    if(score2 < low)
        low = score2;
    if(score3 < low)
            low = score3;
    if(score4 < low)
        low = score4;
    if(score5 < low)
        low = score5;

    cout << "Lowest score is: " << low << endl;


return low;
}

最佳答案

为什么不将 findLowest 的返回类型更改为 double?

关于c++ - 与函数中的返回值不同的数据类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9345116/

相关文章:

c++ - 如果析构函数有副作用并且对象是从另一个静态对象的析构函数访问的,如何进行静态反初始化?

c++ - 在 64 位操作系统上使用 WaitForSingleObject 的问题

c++ - : when we press and hold,程序只做一次怎么办?

c++ - 加载共享库时出错 : libsystemc-2. 3.0.so

c++ - 将基本(非指针)参数设为 const 是否有意义?

c++ - 这段 C++ 视频中的工厂类有何意义?

c++ - Tensorflow:在 C++ 中打印张量的内容

c++ - 使用C++计算给定数字中的奇数和偶数

c++ - 等待 Windows API 中的串行接收事件和控制台输入事件

c++ - 如何同时打开和关闭带有断言的库构建?