如何让控制台菜单在我执行一项功能后重复执行,以便我可以在不关闭程序的情况下执行另一项功能?

How do I get a console menu to repeat once I have carried out one function so that I can carry out another without the program closing?

我已经设置了控制台菜单,如下所示:

int userOption = printMenu(sc);
while(userOption != 6){
switch(userOption) {
case 1: //function 1
        break;
case 2: //function 2
        break;
case 3: //function 3
        break;
case 4: //function 4
        break;
case 5: //function 5
        break;
case 6: //
        break
default: //statement asking for valid option
  }
}

然而,当我 运行 这个时,它只允许我正确地执行一次我想要的方法,而不是 return 我的菜单并允许我继续使用其他功能在我刚刚用过的那个上面,它只是不断重复我用过的原始功能。

谁能帮帮我,给我一些建议?

从这里给出的内容来看,您似乎没有得到其他用户输入。要解决它,您需要在执行循环后获得另一个用户输入。

int userOption = printMenu(sc);
while(userOption != 6) {
    switch(userOption) {
        case 1: //function 1
                break;
        case 2: //function 2
                break;
        case 3: //function 3
                break;
        case 4: //function 4
                break;
        case 5: //function 5
                break;
        case 6: //
                break
        default: //statement asking for valid option
    }
    userOption = printMenu(sc);
};

补充一点: 为了节省双输入,您可以简单地将循环重写为 do while 循环:

int userOption = 0;
do {
    userOption = printMenu(sc);
    switch(userOption) {
        case 1: //function 1
                break;
        case 2: //function 2
                break;
        case 3: //function 3
                break;
        case 4: //function 4
                break;
        case 5: //function 5
                break;
        case 6: //
                break
        default: //statement asking for valid option
    }
} while(userOption != 6);

添加到您的评论中,您可能不会再次将值存储到 userOption 中,而只是要求输入。