如何在C ++中跳过> =

时间:2017-02-22 05:01:46

标签: c++

如果我的用户输入满足前一个if状态,我无法弄清楚如何使我的代码转到下一个if语句。

#include <iostream>

using namespace std;

int main()
{
    double input;
    cout << "Time Calculator\n Enter the number of Seconds: " << endl;
    cin >> input;
    if (input < 60)
    {
        cout << "The time is " << input << " seconds." << endl;
    }
    else if (input >= 60)
    {
        cout << "The time is " << input << " minutes." << endl;
    }
    else if (input >= 3600)
    {
        cout << "The time is " << input << " hours." << endl;
    }
    else if (input >= 86400)
    {
        cout << "The time is " << input << " days." << endl;
    }
    return 0;
}

4 个答案:

答案 0 :(得分:3)

如果输入&gt;则在您的代码中

60它将满足条件并且不会执行其他部分因此首先检查其输入&gt; 86400如果没有那么检查是否输入&gt;如果没有则为36000然后检查输入&gt; 60

尝试以下代码,如果条件反转

#include <iostream>

using namespace std;

int main()
{
double input;
cout << "Time Calculator\n Enter the number of Seconds: " << endl;
cin >> input;
if (input < 60)
{ 
  cout << "The time is " << input << " seconds." << endl;
}
else if (input >= 86400)
{
    cout << "The time is " << input << " days." << endl;
}
else if (input >= 3600)
{
    cout << "The time is " << input << " hours." << endl;
}
else if (input >= 60)
{
    cout << "The time is " << input << " minutes." << endl;
}
return 0;
}

答案 1 :(得分:2)

反过来说。

Sat Dec 30 1899 08:09:00 GMT-0500 (EST)

希望这就是你想要的!

答案 2 :(得分:0)

有多种方法可以执行此操作,您可以使用>= val1 and < val2等条件在两个值之间进行检查,或者确保检查发生的顺序不同。

#include <iostream>

using namespace std;

int main()
{
    double input;
    cout << "Time Calculator\n Enter the number of Seconds: " << endl;
    cin >> input;
    if (input < 60)
    {
        cout << "The time is " << input << " seconds." << endl;
    }
    else if (input >= 60 && input < 3600)
    {
        cout << "The time is " << input << " minutes." << endl;
    }
    else if (input >= 3600 && input < 86400)
    {
        cout << "The time is " << input << " hours." << endl;
    }
    else if (input >= 86400)
    {
        cout << "The time is " << input << " days." << endl;
    }
    return 0;
}

或其他方式是更改订单,一旦特定if语句有效,它就不会检查其余的if语句。

#include <iostream>

using namespace std;

int main()
{
    double input;
    cout << "Time Calculator\n Enter the number of Seconds: " << endl;
    cin >> input;
    if (input >= 86400)
    {
        cout << "The time is " << input << " seconds." << endl;
    }
    else if (input >= 3600)
    {
        cout << "The time is " << input << " minutes." << endl;
    }
    else if (input >= 60)
    {
        cout << "The time is " << input << " hours." << endl;
    }
    else if (input < 60)
    {
        cout << "The time is " << input << " days." << endl;
    }
    return 0;
}

答案 3 :(得分:0)

你的if else条件没有完全定义......你必须在范围内设置它们......否则不会起作用......

if (input < 60)
    {
        cout << "The time is " << input << " seconds." << endl;
    }
    else if (input >= 60 && input < 3600))
    {
        cout << "The time is " << input << " minutes." << endl;
    }
    else if (input >= 3600 && input < 86400))
    {
        cout << "The time is " << input << " hours." << endl;
    }
    else if (input >= 86400)
    {
        cout << "The time is " << input << " days." << endl;
    }