簡體   English   中英

C ++開關語句結束菜單

[英]C++ switch statement ending the menu

嘿,我正在為我的C ++編程類開發一個Switch選擇菜單。 我設法讓我的菜單工作,但我不知道如何在我所做的菜單中的退出選擇上停止程序。

我的代碼是

#include <iostream>
using namespace std;

int main()
{
    char selection;

    do
    {
        cout << "  IHCC Computer Science Registration Menu\n";
        cout << "  ====================================\n";
        cout << "  1.  Welcome to Computer Programming In C++\n";
        cout << "  2.  Welcome to Java Programming\n";
        cout << "  3.  Welcome to Android Programming\n";
        cout << "  4.  Welcome to iOS Programming\n";
        cout << "\n";
        cout << "  5.  Exit\n";
        cout << "  ====================================\n";
        cout << "  Enter your selection: ";
        cin >> selection;
        cout << endl;

        switch (selection)
        {
            case '1':
                cout << "Computer Programming In C++\n";
                cout << "\n";
                break;

            case '2':
                cout << "Java Programming\n";
                cout << "\n";
                break;
            case '3':
                cout << "Android Programming\n" ;
                cout << "\n";
                break;

            case '4':
                cout << "iOS Programming\n";
                cout << "\n";
                break;

            case '5':
                cout << "Goodbye.\n";
                break;

            default: cout <<selection << "is not a valid menu item.\n";

                cout << endl;
        }

    }while (selection != 0 );

    return 0;
}

更改

while (selection != 0)

至:

while (selection != '5')

另請注意,您當前的方法僅讀取單個字符。 如果您不希望具有更多數字的數字根據其第一個數字調用選擇,請改為讀取int

int selection = 0;

do {

    cout << ...        
    cin >> selection;

    switch (selection) {
        case 1:
            ...
            break;
        ...
        case 5:
            cout << "Goodbye.\n";
            break;

        default:
            ...
    }

} while (selection != 5);

LihO和sharth有正確的解決方案,但如果想要在輸入5時退出程序,那么我建議這樣做:

case '5':
  cout << "Goodbye.\n";
  return 0;

它使程序退出,而不是稍后在代碼中退出。

只需設置selection變量即可滿足您必須退出循環的條件:

case '5':
    cout << "Goodbye.\n";
    selection = 0;
    break;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM