好吧,我对我为学校制作的程序有点困惑。程序执行,我得到了我想要的结果,但我只是觉得可以做得更好。在我的 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/