си: основные принципы и примеры использования
Оператор switch в языке Си используется для множественного выбора одного значения из нескольких альтернативных вариантов.
Синтаксис оператора switch выглядит следующим образом:
c
switch (выражение) {
case значение1:
// выполнить код для значения1
break;
case значение2:
// выполнить код для значения2
break;
...
default:
// выполнить код по умолчанию, если ни один case не подошел
break;
}
Выражение, указанное в скобках после ключевого слова switch, вычисляется в целочисленное значение. Значение выражения сравнивается со значениями каждого case с помощью оператора сравнения "==".
Если значение выражения совпадает с одним из значений case, выполняется блок кода, соответствующий этому case. Код, связанный с каждым case, заключается в фигурные скобки. Оператор break необходим для выхода из оператора switch после выполнения кода одного из case. Если оператор break опущен, выполнение кода будет продолжено и соседние блоки кода будут выполнены, что может привести к нежелательным результатам.
Если значение выражения не совпадает ни с одним из значений case, выполняется блок кода, связанный с ключевым словом default. Оператор default является необязательным и может быть опущен в операторе switch.
Вот пример использования оператора switch:
c
#include
int main() {
int num = 2;
switch (num) {
case 1:
printf("Значение num равно 1\n");
break;
case 2:
printf("Значение num равно 2\n");
break;
case 3:
printf("Значение num равно 3\n");
break;
default:
printf("Значение num не равно 1, 2 или 3\n");
break;
}
return 0;
}
В данном примере переменная num имеет значение 2. Выражение switch сравнивает это значение с каждым case. Поскольку значение num совпадает со значением case 2, будет выполнен код, связанный с этим case. Результатом выполнения программы будет вывод строки "Значение num равно 2".
Если бы переменная num имела значение, которое не совпадало бы ни с одним из значений case, выполнение кода попало бы в блок кода, связанный с default.
Таким образом, оператор switch в языке Си позволяет создавать структуры множественного выбора и выполнять различный код в зависимости от значения выражения.