Заява переключення в C ++ - Як це працює - Синтаксис та приклади

Зміст:

Anonim

Що таке заява про переключення в C ++?

Оперативні випадки перемикання - це контрольована заява, яка розглядається як заміна для операторів if-else. Це мультипольовий оператор гілки, який забезпечує спосіб впорядкування потоку виконання до частин коду на основі значення виразу. У самому базовому терміні, перемикач заяви оцінює вираз, тестує його і порівнює його з кількома випадками, записаними в коді. Як тільки буде знайдено збіг із будь-яким випадком, контроль введе цей випадок і почне виконувати заяви, написані в цьому випадку, поки не буде знайдено заяву про перерву. Як тільки з'являється заява про перерву, оператор перемикання припиняється, а управління програмою виходить з комутатора.

Іноді може статися так, що жоден випадок не співпадає зі значенням виразу. Для таких випадків ми згадуємо випадок за замовчуванням, який завжди буде виконуватися у випадку, якщо не знайдено відповідності. Справи в блоці оператора перемикання представлені різними числами або рядком, який відомий як ідентифікатор. Значення виразу або значення, надане користувачем, порівнюється з цими випадками, поки не буде знайдено збіг.

Синтаксис заяви про перемикання C ++

Синтаксис оператора перемикання в мові програмування 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;

Під час використання заяви про перемикання потрібно пам’ятати про наступні речі:

  1. Мітки регістру можуть бути цілим чи символом, і вони повинні бути унікальними
  2. Мітки корпусу завжди закінчуються крапкою з комою.
  3. Незважаючи на те, що мітка регістру за замовчуванням не є обов'язковою, вона може бути, максимум, такою, якщо вона визначена.
  4. Вам потрібна операція перерви, щоб зняти керування з циклу, інакше всі випадки до розриву будуть виконані.
  5. Мітка регістру за замовчуванням не має жодної конкретної позиції.
  6. Оператор перемикання також може бути вкладений.

Блок-схема заяви про перемикач

Як працює засіб переключення в C ++?

Давайте розберемося з потоком управління, зображеним на блок-схемі вище, щоб краще зрозуміти потік виконання.

Вираз передається з оператором switch, який дорівнює одному зі значень випадків. Якщо значення не дорівнює, виконується випадок за замовчуванням. Значення цього виразу потім порівнюється з ідентифікатором випадку або першим випадком. Якщо перший випадок відповідає, то виконується блок коду, пов'язаний з першим випадком. Як тільки станеться перерва, виконання зупиняється, і ви вийдете з оператора перемикача. Однак якщо випадок не збігається, виконання переходить до наступного випадку. Якщо цей випадок відповідає, то другий блок коду виконується інакше, потік перевіряє наступний випадок аналогічним чином. Нарешті, якщо жоден випадок не відповідає, тоді виконується блок коду за замовчуванням.

Приклади заяви про перемикання в C ++

Дозволяє нам побачити деякі приклади оператора переключення в C ++.

Приклад №1

Цей приклад дасть більше ясності щодо використання операторів перемикання.

#include
using namespace std;
int main () (
char grade_report = 'D';
cout << "Your performance is: " << endl;
switch(grade_report) (
case 'A' :
cout << "Outstanding Result!\n" << endl;
break;
case 'B' :
cout << "Excellent Result!\n" << endl;
break;
case 'C' :
cout << "Good Result\n" << endl;
break;
case 'D' :
cout << "Satisfying Result\n" << endl;
break;
case 'F' :
cout << "Poor Result\n" << endl;
break;
default :
cout << "You did not appear for exam\n" << endl;
)
return 0;
)

Вихід:

Ваше виконання: Задовільний результат

Приклад №2

Цей приклад зображує використання оператора break в комутаторі. Якщо після випадку оператор перерви не вказаний, потік виконання триватиме до тих пір, поки він не зустрінеться з оператором break.

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

Вихід:

Цей випадок також виконується, оскільки немає перерви
Число або 40, або 50, або 60

Приклад №3

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

Вихід:

до побачення

Приклад №4

Вкладений вимикач

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

Вихід:

Це залежатиме від значень, введених користувачем.

Вихід 1:

Введіть свій ідентифікатор: 300
Введіть свій пароль: 1000
Ласкаво просимо на портал

Вихід 2:

Введіть свій ідентифікатор: 100
Введіть правильний ідентифікатор

Вихід 3:

Введіть свій ідентифікатор: 300
Введіть свій пароль: 000
Введіть правильний пароль

Висновок

Ви повинні знати, що основний потік та функціональність оператора перемикання залишаються однаковими у всіх мовах програмування. Різницю можна побачити лише в загальному синтаксисі на основі мови програмування, що використовується.

Рекомендовані статті

Це було керівництвом щодо заяви про переключення в C ++. Тут ми обговорюємо поняття, синтаксис, роботу та приклади заяви про перемикання в C ++. Ви також можете ознайомитися з іншими запропонованими нами статтями, щоб дізнатися більше -

  1. С ++ рядкові функції
  2. Що таке клас шаблонів у C ++?
  3. Застосування C ++ в реальному світі
  4. Керівництво по викладу справи на Java
  5. Керівництво по заяві про переключення PHP