如何摆脱这个do-while循环?

时间:2014-12-05 01:53:10

标签: c++ loops do-while

我正在处理一个项目并且有一个类似于下面的循环,其中用户以字符的格式输入几个值,后跟一个整数。当用户只需输入预告片值时,我希望能够退出此循环。' E'。只有输入一个' E'才能摆脱这个循环。而不是' E'后跟一个整数?

    int main()
{
    char letter;
    int charge;
    do
    {
        cout << "Input letter and charge: ";
        cin >> letter >> charge;
    }while(letter != 'E');
    return 0;
}

2 个答案:

答案 0 :(得分:5)

你可以使用break:

do
{
    cout << "Input letter and charge: ";
    cin >> letter;

    if (letter == 'E') break;

    cin >> charge;

} while (true);

答案 1 :(得分:3)

当实际存在退出条件时,我不是while(true)的粉丝所以我会这样做:

int main()
{
    char letter = 'E';
    int charge;

    cout << "Input letter and charge: ";

    for(cin >> letter; letter != 'E'; cin >> letter)
    {
        cin >> charge;
        cout << "Input letter and charge: ";
    }
    return 0;
}