switch文の使い方

switch文とは?

C言語の制御文としてswitch文はとても重要です。
if文と同じく条件に基づくプログラムの流れの制御を可能にしますが、主に一つの変数や式の結果に基づいて多くの条件を検証する際に用いられます。
今回は、C言語のswitch文の使い方を学んでいきましょう!

 

基本的なswitch文の形

switch文の基本的な形は以下のようになります。

switch (expression) {
    case constant1:
        // 処理
        break;
    case constant2:
        // 処理
        break;
    default:
        // どのcaseにも該当しない場合の処理
}

switch文は指定された式(expression)の結果と各caseの定数(constant1, constant2, …)を比較します。
結果があるcaseの定数と一致すれば、そのcaseの後に書かれている処理を実行します。

そして、”break;”によってswitch文を終了します。
もしbreakが無ければ、次のcaseの処理まで実行が続けられます。
これは”fall through”と呼ばれる挙動で、意図しない場合も多いので注意が必要です。

defaultの部分は、式の結果がどのcaseの定数とも一致しない場合に実行される処理を書きます。
これはオプションで、存在しなくてもswitch文は成立します。

 

具体的な例

次に具体的なswitch文の例を見てみましょう。

#include <stdio.h>

int main() {
    int number = 2;

    switch (number) {
        case 1:
            printf("Number is 1.\n");
            break;
        case 2:
            printf("Number is 2.\n");
            break;
        default:
            printf("Number is neither 1 nor 2.\n");
    }

    return 0;
}

このプログラムでは、numberという変数の値が1か2か、それ以外かを判定し、その結果に応じて適切なメッセージを表示します。

switch文をうまく活用することで、コードの可読性や効率を向上させることが可能です。
特に、一つの値に対して多くの条件分岐を行いたい場合には、switch文を用いるととても便利です。
今回の学びをぜひ日々のコーディングに活かしてみてください!