我正在尝试为程序创建一个简单的菜单,以便在输入EXIT之后可以轻松在两种模式之间切换。
当前的问题是,一旦我输入EXIT,我的程序就会显示菜单,但是一旦我选择了一个选项,它就会关闭。
我在这里找到了类似的帖子,但我似乎尝试了给出的答案,但没有运气。
int main(void) {
int userChoice = 0;
char userInput[100];
int index = 0;
userChoice = mainMenu();
switch (userChoice) {
case 1:
printf("Enter EXIT anytime to quit out of loop.\n");
while (strcmp(userInput, "EXIT") != 0) {
printf("->");
scanf("%s", userInput);
}
userChoice = mainMenu();
break;
}
return 0;
}
int mainMenu() {
int userChoice = 0;
printf("--------------------------\n");
printf("Option 1 \n");
printf("Option 2 \n");
printf("--------------------------\n");
printf("Please enter 1 for Option 1 and 2 for Option 2 ->");
scanf("%d", &userChoice);
return userChoice;
}
答案 0 :(得分:0)
第二次选择菜单选项后,您无需尝试执行任何操作。您只需离开switch
,然后按一下return
。
您需要添加另一个循环,并且仅在循环顶部显示菜单:
int main(void) {
int userChoice = 0;
char userInput[100];
int index = 0;
while (1) {
userChoice = mainMenu();
switch (userChoice) {
case 1:
printf("Enter EXIT anytime to quit out of loop.\n");
do {
printf("->");
scanf("%s", userInput);
} while (strcmp(userInput, "EXIT") != 0);
break;
}
}
return 0;
}