2

C++ プログラミング クラスのスイッチ選択メニューに取り組んでいます。メニューを機能させることができましたが、作成したメニューの終了選択でプログラムを停止する方法がわかりません。

私のコードは

#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;
}
4

3 に答える 3

6

変化する

while (selection != 0)

に:

while (selection != '5')

また、現在のアプローチでは 1 文字しか読み取れないことに注意してください。それ以上の桁数を使用したくない場合は、最初の桁に基づいて選択を呼び出しますint。代わりに次のように読みます。

int selection = 0;

do {

    cout << ...        
    cin >> selection;

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

        default:
            ...
    }

} while (selection != 5);
于 2013-10-02T21:12:09.637 に答える
2

LihO と sharth には適切な解決策がありますが、アイデアが 5 を入力したときにプログラムを終了することである場合は、ケースでこれを行うことをお勧めします。

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

プログラムはそこで終了し、コードの後半では終了しません。

于 2013-10-02T21:14:33.180 に答える
0

selectionすでにループを終了する必要があるという条件を満たすように変数を設定するだけです。

case '5':
    cout << "Goodbye.\n";
    selection = 0;
    break;
于 2016-06-10T06:12:33.727 に答える