Введение в оператор Switch в C

Прежде чем мы узнаем, что такое оператор Switch в C, давайте сначала разберемся, что такое C.
C является процедурно-ориентированным языком программирования, разработанным Деннисом Ричи. Основная цель разработки языка Си состояла в том, чтобы использовать его в качестве языка программирования системы, то есть для программирования операционной системы. Многие языки заимствуют свой синтаксис из этого языка Си. C ++, например, является расширением или может рассматриваться как обновленная версия языка программирования C.

Что такое оператор Switch в C?

Рассмотрим случай, когда вам дали кучу ключей разных размеров. Теперь вас просят открыть дверь, используя один из ключей из этой связки. Так каков будет ваш подход к этой проблеме? Это просто, и вы угадали, вы выберете один ключ и попытаетесь открыть дверь, используя его. Если этот ключ не открывает дверь, попробуйте другой ключ. Процесс продолжается до тех пор, пока вы наконец не найдете ключ, который открывает дверь. Когда ключ найден и дверь открыта, вы останавливаетесь. В случае, если вы сможете найти ключ с первой попытки, вы не будете продолжать пытаться использовать другие ключи после этого, правильно?

Похожий случай с оператором switch. Этот пример может помочь вам легко понять базовое определение и последовательность выполнения оператора switch. Базовый поток и функциональность оператора switch остаются одинаковыми на всех языках программирования. Разницу можно увидеть только в общем синтаксисе, основанном на используемом языке программирования.

В самом простом выражении оператор switch оценивает выражение, проверяет его и сравнивает с несколькими случаями, написанными в коде. Как только найдено совпадение с каким-либо случаем, элемент управления входит в это дело и начинает выполнять операторы, написанные в этом случае, пока не встретится оператор прерывания. Как только появляется оператор break, оператор switch завершается, и управление программой выходит из switch.

Иногда может случиться, что ни один регистр не совпадает со значением выражения. Для таких случаев мы упоминаем случай по умолчанию, который всегда будет выполняться в случае, если совпадение не найдено.

Случаи в блоке оператора switch представлены различными числами или строкой, которая называется идентификатором. Значение выражения или значение, предоставленное пользователем, сравнивается с этими случаями, пока не будет найдено совпадение.

Синтаксис оператора switch в языке программирования C приведен ниже.

синтаксис:

switch( expression )
(
case value1:
//Block of code;
break;
case value2:
//Block of code;
break;
case valueN:
//Block of code
break;
default:
//Block of code
break;

Пример:

Этот пример даст больше ясности относительно использования оператора switch
#include
int main () (
char grade_report = 'D';
printf("Your performance is : ");
switch(grade_report) (
case 'A' :
printf("Outstanding Result!\n" );
break;
case 'B' :
printf("Excellent Result!\n" );
break;
case 'C' :
printf("Good Result\n" );
break;
case 'D' :
printf("Satisfying Result\n" );
break;
case 'F' :
printf("Poor Result\n" );
break;
default :
printf("You did not appear for exam\n" );
)
return 0;
)

Выход:

Ваше выступление: Удовлетворяющий результат

Блок-схема оператора Switch

Как оператор Switch работает в C

Давайте разберемся с потоком управления, изображенным на блок-схеме выше, чтобы лучше понять ход выполнения.

Выражение передается с оператором switch, равным одному из значений падежей. Если значение не равно, выполняется случай по умолчанию. Значение этого выражения затем сравнивается с идентификатором регистра или первым регистром. Если первый случай совпадает, то выполняется блок кода, связанный с первым случаем. Как только перерыв обнаружен, выполнение останавливается, и вы выходите из оператора switch. Однако, если регистр не совпадает, выполнение переходит к следующему. Если этот случай совпадает, то второй кодовый блок выполняется иначе, поток аналогичным образом проверяет следующий случай. Наконец, если ни один регистр не соответствует, выполняется блок кода по умолчанию.

Давайте посмотрим на еще несколько примеров -

Пример :

В этом примере показано использование оператора break в switch. Если оператор break не указан после регистра, поток выполнения будет продолжаться до тех пор, пока не встретит оператор break.

#include
int main() (
int range_of_number=50;
switch (range_of_number) (
case 10:
case 20:
case 30:
printf("The number is 10 or 20 or 30 ");
break;
case 50:
case 55:printf("This case also executes because there is no break ");
printf("\n");
case 60:
printf("The number is either 40 or 50 or 60");
break;
default:
printf("The number is greater than 60");))

Выход :
Этот случай также выполняется, потому что нет перерыва
Число 40 или 50 или 60

Пример:

#include
int main()
(
int x = 10, y = 5;
switch(x==y && x+y<10)
(
case 1:
printf("hi");
break;
case 0:
printf("bye");
break;
default:
printf(" Hello bye ");
) )

Выход :

пока

Пример:

Вложенный оператор Switch.

#include
int main() (
int ID = 300;
int password = 1000;
printf("Enter Your ID:\n ");
scanf("%d", & ID);
switch (ID) (
case 300:
printf("Enter your password:\n ");
scanf("%d", & password);
switch (password) (
case 1000:
printf("Welcome to the portal\n");
break;
default:
printf("Enter correct password");
break;
)
break;
default:
printf("Enter correct ID");
break;
)
)

Выход :

Это будет зависеть от значений, введенных пользователем.

Выход 1:

Введите ваш ID: 300
Введите ваш пароль: 1000
Добро пожаловать на портал

Выход 2:
Введите ваш ID: 100
Введите правильный идентификатор

Выход 3:
Введите ваш ID: 300
Введите ваш пароль: 000
Введите правильный пароль

Вывод

Операторы switch case являются контролируемым оператором, который рассматривается как замена операторов if-else. Это многопоточный оператор ветвления, который обеспечивает способ организации потока выполнения к частям кода, основанным на значении выражения.

Рекомендуемые статьи

Это было руководство к инструкции Switch в C. Здесь мы также обсуждаем Введение и Как работает инструкция Switch в C. Вы также можете взглянуть на следующие статьи, чтобы узнать больше -

  1. C ++ против Java | Узнайте разницу
  2. Примеры оператора Switch в C ++
  3. Как Case Case работает в Java?
  4. Обзор заявления о переключении PHP
  5. Руст против C ++ | Основные отличия
  6. Полное руководство по выражению Python Switch
  7. Руководство по переключению регистра в PowerShell