用户退出时如何关闭控制台窗口?

时间:2018-05-03 18:53:47

标签: c visual-studio

我的程序要求用户输入再次尝试或退出程序的选择。当用户输入'y / Y'时,他/她可以再次尝试,如果用户输入'q / Q',则程序退出。我不知道如何编写我的程序,如果用户输入q,控制台窗口会自动关闭。

另外我还有另外一个问题,每当用户输入'y / Y'时,“你想再试一次吗?无效选项。”完成所有计算后,行自动出现。它应该不存在。我认为我的编码存在轻微错误,但我不确定哪个部分是错误的。

以下是该错误的屏幕截图:

enter image description here

以下是编写此特定功能的代码的一部分:

while (1)
{
    /*Making sure vertices entered by user are valid*/
    if (!Invalid) {
        printf("Please choose a node:\n");
        scanf_s("%d", &i);

        if (0 <= i && i <= 20){
            print_index(i);
            Invalid = true;
        }
        else {
            printf("Error! Please enter a valid node.\n");
        }
    }
    /*Prompt user to try again or quit the program*/
    if (Invalid) {
        printf("\nDo you wish to try again? <Type Y to continue or Q to quit>\n");
        scanf_s("%c", &End_Program);

        if (End_Program == 'q' || End_Program == 'Q') {//user can input q or Q
            printf("\nThank you!\n");
            printf("==============================\n\n");
            getchar();
        }
        else if (End_Program == 'y' || End_Program == 'Y') {//user can continue
            Repeat = true;
            Invalid = false;
        }
        else {
            printf("Invalid option.\n");
            Invalid = true;
            Repeat = true;
        }

    }
}

1 个答案:

答案 0 :(得分:0)

你需要把&#34;返回0;&#34; 放在你验证用户是否要退出的if的末尾,它将停止代码。