Как использовать оператор switch в C

Оператор переключения позволяет проверять переменную на соответствие нескольким значениям. Каждое из этих значений называется случаем . Как только соответствующий случай найден, выполняется его конкретный блок кода. Это альтернатива более распространенному оператору if-else .

Синтаксис

  switch (выражение)  {case constant_1://Код, который будет выполняться, если выражение == constant_1 break;  case constant_2://Код для выполнения, если выражение == constant_2;  перерыв;  default://регистр по умолчанию является необязательным//Код, который будет выполняться, если ни один из вариантов не соответствует.}  

Rules

Есть некоторые правила следует помнить при написании операторов переключения:

  • Выражение в переключателе может быть переменной или выражением, но оно должно быть целое число или символ.
  • У вас может быть любое количество падежей, но не должно быть дубликатов. Операторы switch также могут быть вложены друг в друга.
  • Необязательный случай default выполняется, когда ни один из указанных выше случаев не совпадает.
  • Оператор break используется для прерывания потока управления после выполнения блока case. Хотя это необязательно, без него все последующие кейсы после совпадающего кейса также будут выполнены. Рассмотрите приведенный ниже код, чтобы получить более четкое представление:

Поток

Следующая диаграмма иллюстрирует поток управления в коммутаторе:

Примеры

Начиная с var = 10 , элемент управления перешел в блок case 10 — но без любых разрывов, поток не прерывается, и все последующие операторы case также печатаются.

Попробуйте раскомментировать операторы break и запишите результат. Не стесняйтесь экспериментировать со значением var .

Примечание: A break не требуется после случая default . Это связано с тем, что элемент управления в любом случае естественным образом выйдет из оператора switch .

 int main () {int var = 10;  switch (var) {case 5: printf ("Случай 1 выполнен."); //перерыв;  case 10: printf («Случай 2 выполнен.»); //перерыв;  case 15: printf («Случай 3 выполнен.»); //перерыв;  case 20: printf («Случай 4 выполнен.»); //перерыв;  по умолчанию: printf ("Выполняется случай по умолчанию. ");}} 

Вы можете использовать char для выражения переключения и регистров. В приведенном ниже коде option соответствует case 'b' , следовательно, его блок case выполнен.

 int main () {char option = 'b'; switch (option) {case 'a': printf ("Случай попадания."); break; case 'b': printf ("Случай b ударил.  "); break; case 'c': printf (" Case c hit. "); break; default: printf (" Default case hit. ");}} 

Оцените статью
nanomode.ru
Добавить комментарий