C++ プログラム例による Switch Case ステートメント
スイッチとは何ですか?
switch ステートメントは、一連の値に対する変数の等価性をテストするのに役立ちます。 比較対象の各値はケースとして知られています。
switch を多方向分岐ステートメントとして見てください。式の値に基づいて、プログラムの実行をさまざまな部分に移すことができます。
スイッチをいつ使用するか?
このスイッチは、if...else...if ラダーに似ています。 ただし、よりクリーンで理解しやすいコードが生成されます。 切り替えも、if...else...if ラダーと比べて高速です。 変数の値を他の値のセットと比較する必要がある場合は、switch ステートメントを使用します。
ブレークキーワード
Break キーワードは switch ステートメント内で使用されます。 これにより、コードが次のケースに突入するのを防ぎます。 ステートメントシーケンスを終了します。
時 C++ コンパイラが break キーワードを検出すると、switch の実行は終了し、制御は switch ステートメントの後の行にジャンプします。switch での break ステートメントの使用はオプションです。使用しない場合は、実行は次のケースに進みます。
構文
switch ステートメントの構文は次のとおりです。
switch (variable) { case 1: break; case 2: break; default: }
上記のパラメータについては以下で説明します。
- 変数: これは比較が行われる変数です。
- ケース: 多くの case ステートメントがあります。それぞれが変数を異なる値と比較します。
- ブレーク: このキーワードにより、実行が次の case ステートメントに続行されなくなります。
- デフォルト: これはオプションです。 変数の値がどのケースにも一致しなかったため、何をすべきかを示します。
スイッチケースプログラム例 1
#include<iostream> using namespace std; int main() { int x = 20; switch (x) { case 10: cout<<"X is 10"; break; case 20: cout << "X is 20"; break; case 30: cout << "X is 30"; break; default: cout<<"X is not 10, 20 or 30"; break; } return 0; }
出力:
コードのスクリーンショットは次のとおりです。
コードの説明:
- コードに iostream ヘッダー ファイルを含めます。 これにより、コンソールからの読み取りとコンソールへの書き込みが可能になります。
- std 名前空間を含めて、そのクラスと 機能 呼ばずに。
- プログラムのロジックを追加する main() 関数を呼び出します。
- { は、main() 関数の本体の開始を示します。
- 変数 x を宣言し、20 に初期化します。
- switch ステートメントを使用し、引数 x をそれに渡します。 これは、変数 x の値を他の値のセットと比較する必要があることを意味します。
- { はスイッチ本体の開始を示します。
- 変数 x の値を値 10 と比較します。
- 上記のケースが true の場合、つまり x が 10 の場合に実行されるステートメント。ブレークにより、実行が次のケースに続行されなくなります。
- 変数 x の値を値 20 と比較します。
- 上記のケースが true の場合、つまり x が 20 の場合に実行されるステートメント。ブレークにより、実行が次のケースに続行されなくなります。
- 変数 x の値を値 30 と比較します。
- 上記のケースが true の場合、つまり x が 30 の場合に実行されるステートメント。ブレークにより、実行が次のケースに続行されなくなります。
- デフォルトは、変数 x の値が 10、20、または 30 でない場合に何を行うかを示すのに役立ちます。
- 上記のケースが当てはまらない場合、つまり x が 10、20、または 30 でない場合に実行されるステートメント。
- switch ステートメントの本文の終わり。
- プログラムが正常に実行される場合、main() 関数は値を返す必要があります。
- main() 関数の本体の終わり。
CとCの違いに関する記事もご覧ください。 C++:- 詳細
スイッチケースプログラム例 2
#include <iostream> using namespace std; int main() { int choice; cout << "Enter 1, 2 or 3: "; cin >> choice; switch (choice) { case 1: cout << "Choice 1"; break; case 2: cout << "Choice 2"; break; case 3: cout << "Choice 3"; break; default: cout << "Not 1, 2 or 3"; break; } }
出力:
コードのスクリーンショットは次のとおりです。
コードの説明:
- コードに iostream ヘッダー ファイルを含めます。 これにより、コンソールからの読み取りとコンソールへの書き込みが可能になります。
- std 名前空間を含めて、そのクラスと関数を呼び出さずに使用できるようにします。
- プログラムのロジックを追加する main() 関数を呼び出します。 { は、main() 関数の本体の開始を示します。
- Choice という名前の整数変数を宣言します。
- コンソールにテキストを出力します。
- ユーザーに選択した値の入力を求めるプロンプト。
- switch ステートメントを使用し、引数の選択をそれに渡します。 これは、変数選択の値を他の値のセットと比較する必要があることを意味します。
- { はスイッチ本体の開始を示します。
- 変数選択の値を値 1 と比較します。
- 上記のケースが true の場合、つまり選択肢が 10 の場合に実行されるステートメント。ブレークにより、実行が次のケースに続行されなくなります。
- 変数選択の値を値 2 と比較します。
- 上記のケースが true の場合、つまり選択肢が 2 の場合に実行されるステートメント。ブレークにより、実行が次のケースに続行されなくなります。
- 変数選択の値を値 3 と比較します。
- 上記のケースが true の場合、つまり選択肢が 3 の場合に実行されるステートメント。ブレークにより、実行が次のケースに続行されなくなります。
- デフォルトは、変数選択の値が 1、2、または 3 ではない場合に何を行うかを示すのに役立ちます。
- 上記の場合が当てはまらない場合、つまり選択肢が 1、2、または 3 ではない場合に実行されるステートメント。
- switch ステートメントの本文の終わり。
- main() 関数の本体の終わり。
製品概要
- switch ステートメントは、単純な if…else…if ラダーを作成するのに役立ちます。
- switch ステートメントは、if…else…if ラダーよりも明確で単純な構文を持ちます。
- switch ステートメントは、変数の値を他の値のセットと比較する必要がある場合に使用する必要があります。
- 値は case ステートメントに追加されます。
- Break キーワードは、実行が次のケースに続行するのを停止します。
- オプションのデフォルト部分は、大文字と小文字が一致しない場合に実行するアクションを指定するために使用されます。