【问题标题】:How to terminate an integer-input loop with a character?如何用字符终止整数输入循环?
【发布时间】:2018-01-18 02:39:21
【问题描述】:

Stack 和 C++ 的新手。 我想终止一个循环,该循环用一个字符反刍输入给它的数字。说,Q 表示退出。以下程序功能正常且没有语法错误。如何在不编辑输入参数的情况下终止此循环?

#include <iostream>
#include <string>

using namespace std;

int main()
{

    bool run = true;

    while(run)
    {
    cout<<"Enter your two favorite numbers."<<endl;

    int num1;
    int num2;

    cin>>num1>>num2;

    cout<<"You entered "<<num1<<" and "<<num2<<"."<<endl;

    }

    return 0;

}

【问题讨论】:

    标签: c++ while-loop char int cin


    【解决方案1】:

    你想要break statement。但是您还需要为第一个输入读取一个字符串,而不是一个整数。

    while(run)
    {
        cout<<"Enter your two favorite numbers, or 'Q' to exit."<<endl;
    
        string input;
        int num1;
        int num2;
    
        cin>>input1;
    
        if (input == "Q")
        {
            break;
        }
        else
        {
            num1 = stoi(input);
        }
    
        cin>>num2;
    
        cout<<"You entered "<<num1<<" and "<<num2<<"."<<endl;
    }
    

    【讨论】:

    • 解析,当然!我在 break 语句中也遇到了语法问题,经过一些调整后,我发现 David 一开始是对的。还尝试在 if/else 语句中维护布尔变量的可能性。感谢您的编辑。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-14
    • 2020-08-15
    相关资源
    最近更新 更多