C++ 获取循环以重新显示消息c++;

C++ 获取循环以重新显示消息c++;,c++,loops,for-loop,while-loop,do-while,C++,Loops,For Loop,While Loop,Do While,我试图让一个程序显示一个带有选项的菜单,然后给定用户输入,显示一条特定的消息。在显示他们的消息后,我希望循环返回显示消息,直到他们选择退出选项。如何使循环在选择1-3后返回显示菜单 #包括 #包括 使用名称空间std; int main(){ int菜单选项; cout您的代码只显示了一次菜单。如果用户输入了无效的选项,您将立即退出。如果用户输入了有效的选项,您将执行所选的工作,但随后退出,而不是再次显示菜单。所有的while..continue循环完全没有用,它们最多只运行一次,设置menu_

我试图让一个程序显示一个带有选项的菜单,然后给定用户输入,显示一条特定的消息。在显示他们的消息后,我希望循环返回显示消息,直到他们选择退出选项。如何使循环在选择1-3后返回显示菜单

#包括
#包括
使用名称空间std;
int main(){
int菜单选项;

cout您的代码只显示了一次菜单。如果用户输入了无效的选项,您将立即退出。如果用户输入了有效的选项,您将执行所选的工作,但随后退出,而不是再次显示菜单。所有的
while..continue
循环完全没有用,它们最多只运行一次,设置
menu_choice
设置为0,这会在
循环时中断外部的
,因此它也只运行1次

您需要一个连续运行的外部循环,每次都显示菜单,直到您真正准备退出

您还应该使用
if/else
块替换无用的
while..continue
循环,或者最好使用单个
开关

请尝试类似以下内容:

#包括
#包括
使用名称空间std;
int main()
{
int菜单选项;
做
{

cout我真的认为你在这个问题上不需要帮助,所以我有点不愿意写这个答案

重复选择通常通过以下方式实现:

while (someCondition) {       // goes out if the condition isn't met
    cout << "The question" << endl;
    cin >> theAnswer;

    if (theAnswer == 1) {     // check the answer
        // do something
    }
                              // probably other checks
}
while(someCondition){//如果不满足条件,则会熄灭
答案;
如果(答案==1){//请检查答案
//做点什么
}
//可能还有其他支票
}

我建议你先在小程序中练习一下if和while,比如询问年龄,或者计算fibonnaci列表

@Remy Lebeau发帖更快,他的答案写得很好,但是因为我已经完成了代码的编写,你可能会受益于查看不同的实现,所以我在发帖。我故意选择不使用s因为你以前可能没见过它

#包括
#包括
使用名称空间std;
int main(){
bool-quit=false;
int菜单选项;
而(!退出){

难道这就是疯狂的imho
while(菜单选项==1){cout那是很多时候了:它们大多数都是无用的。你了解了
if
switch
了吗?它可能会帮助你检查菜单选择。看起来你想使用
if
s或
switch
而不是那些内部
while
循环。用
switch
重写并添加
默认情况下
case处理如果没有任何选项发生的情况,然后查看是否仍需要问此问题。