首先,我向用户显示一个菜单,供用户从中进行选择。 一旦他们做出选择,一些代码被执行,我想再次向他们展示相同的菜单,以便他们可以做出不同的选择。如何在C++中再次请求输入的switch-case语句循环?
这是到目前为止我的代码:
//call the menu function and put it in a variable which will be used in the switch case statements
menu_selection = main_menu();
condition_main = true;
while (condition_main) {
switch (menu_selection) {
case 1: display(primes);
menu_selection = main_menu();
case 2: display(fibos);
menu_selection = main_menu();
case 3: display(primes_and_fibos);
menu_selection = main_menu();
case 4: display(primes_not_fibos);
menu_selection = main_menu();
case 5: display(fibos_not_primes);
menu_selection = main_menu();
case 6: search();
menu_selection = main_menu();
case 7: condition_main = false;
return 0; //this exits the program
default: cout << "\nThat is an invalid option. Please try again.\n\n";
}
}
然而,当我运行程序,似乎是发生的是,如果我选择选项1,它会做的代码,菜单会再次显示,但如果我再次选择选项1,它将运行为选项2设计的代码。我也尝试了一个do while循环,并且根本不使用循环,似乎没有任何工作。任何帮助表示赞赏,谢谢。
你缺少'break'语句。 – jrok 2013-03-11 12:09:06