无论输入如何,Cpp代码方程返回相同的值

时间:2017-09-23 00:07:45

标签: c++

我正在尝试编写一个适用于temp的风寒计算器。和来自用户输入的风速值。我以前从未使用过pow()函数,而且我不确定我是否正确使用它。我的代码是这样的:

#include <iostream>
#include <cmath>
using namespace std;

float windChillCalculator(float T, float V)
{

    float wind_chill;
    wind_chill = (35.74 + (0.6215 * T) - (35.75 * (pow(V, 0.16)))
            + ((0.4275 * T) * (pow(V, 0.16))));
    return wind_chill;

}

int main()
{
    float T;
    float V;

    cout << "Enter temperature (F): " << endl;
    cin >> T;
    cout << "Enter wind speed (mph): " << endl;
    cin >> V;
    float wind_chill;
    windChillCalculator(T, V);
    cout << endl << "Wind chill is " << wind_chill << endl;

}

无论输入如何,它都会返回4.59e-41。请帮我弄清楚原因..

感谢。

2 个答案:

答案 0 :(得分:0)

这里的问题可能是你使用了两个名为wind_chill的变量。 wind_chill的第一个定义是windChillCalculator函数。这是本地变量的功能。函数外部的代码无法看到此变量(超出范围)。然后windChill被定义为函数,但永远不会被赋予。

将第windChillCalculator (T, V);行更改为windChill = windChillCalculator (T, V);

答案 1 :(得分:0)

你应该放在主要: float wind_chill = windChillCalculator(T,V);