2017-08-10 190 views
0

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; 

} 

回答

0

想要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; 
} 
+0

解析,当然!我在break语句中也遇到了语法方面的问题,经过一些调整之后,David首先解决了这个问题。还试验在if/else语句中维护布尔变量的可能性。感谢编辑。 – seekanddestroy1991