ネストされたswitch文を使用すると、複数の条件を階層的に評価することができます。例えば、ある変数の値に応じて処理を分岐させる場合、外側のswitch文で変数の値を評価し、内側のswitch文で詳細な条件分岐を行うことができます。
以下に、ネストされたswitch文を使用したコード例を示します。
#include <stdio.h>
int main() {
int variable1 = 1;
int variable2 = 2;
switch (variable1) {
case 1:
printf("variable1 is 1\n");
switch (variable2) {
case 1:
printf("variable2 is 1\n");
break;
case 2:
printf("variable2 is 2\n");
break;
default:
printf("Unknown value for variable2\n");
break;
}
break;
case 2:
printf("variable1 is 2\n");
break;
default:
printf("Unknown value for variable1\n");
break;
}
return 0;
}
上記のコードでは、変数variable1
の値が1の場合に外側のswitch文の中に入り、内側のswitch文でvariable2
の値に応じた処理を行います。variable2
の値が2の場合には、"variable2 is 2"というメッセージが出力されます。
ネストされたswitch文を使用することで、より柔軟な条件分岐を実現することができます。ただし、ネストが深くなりすぎるとコードの可読性が低下する可能性があるため、適切な場面で使用するようにしましょう。
以上が、C言語におけるネストされたswitch文の使用方法とコード例の解説です。