Оператор C ++ switch ... case (с примерами)

В этом руководстве мы узнаем об операторе switch и его работе в программировании на C ++ с помощью некоторых примеров.

switchОператор позволяет выполнить блок кода из многих альтернатив.

Синтаксис switchоператора в C ++:

 switch (expression) ( case constant1: // code to be executed if // expression is equal to constant1; break; case constant2: // code to be executed if // expression is equal to constant2; break;… default: // code to be executed if // expression doesn't match any constant )

Как работает оператор switch?

expressionВычисляются один раз , и по сравнению со значениями каждой caseэтикетки.

  • Если есть совпадение, выполняется соответствующий код после соответствующей метки. Например, если значение переменной равно constant2, код после case constant2:выполняется до тех пор, пока breakне встретится оператор.
  • Если совпадений нет, выполняется код после default:.

Примечание . То же самое можно сделать и с if… else… ifлестницей. Однако синтаксис switchоператора более чистый и его гораздо легче читать и писать.

Блок-схема Switch Statement

Блок-схема оператора switch… case в C ++

Пример: создание калькулятора с помощью оператора switch

 // Program to build a simple calculator using switch Statement #include using namespace std; int main() ( char oper; float num1, num2; cout <> oper; cout << "Enter two numbers: " <> num1>> num2; switch (oper) ( case '+': cout << num1 << " + " << num2 << " = " << num1 + num2; break; case '-': cout << num1 << " - " << num2 << " = " << num1 - num2; break; case '*': cout << num1 << " * " << num2 << " = " << num1 * num2; break; case '/': cout << num1 << " / " << num2 << " = " << num1 / num2; break; default: // operator is doesn't match any case constant (+, -, *, /) cout << "Error! The operator is not correct"; break; ) return 0; )

Выход 1

 Введите оператор (+, -, *, /): + Введите два числа: 2.3 4.5 2.3 + 4.5 = 6.8

Выход 2

 Введите оператор (+, -, *, /): - Введите два числа: 2.3 4.5 2.3 - 4.5 = -2.2

Выход 3

 Введите оператор (+, -, *, /): * Введите два числа: 2.3 4.5 2.3 * 4.5 = 10.35

Выход 4

 Введите оператор (+, -, *, /): / Введите два числа: 2.3 4.5 2.3 / 4.5 = 0.511111

Выход 5

Введите оператор (+, -, *, /):? Введите два числа: 2.3 4.5 Ошибка! Оператор не верный.

В приведенной выше программе мы используем switch… caseоператор для выполнения сложения, вычитания, умножения и деления.

Как работает эта программа

  1. Сначала мы предлагаем пользователю ввести желаемого оператора. Затем этот ввод сохраняется в charпеременной с именем oper.
  2. Затем мы предлагаем пользователю ввести два числа, которые хранятся в переменных с плавающей запятой num1 и num2.
  3. Затем switchоператор используется для проверки оператора, введенного пользователем:
    • Если пользователь вводит +, добавляются числа.
    • Если пользователь вводит -, выполняется вычитание чисел.
    • Если вводит пользователь *, числа производятся умножением.
    • Если пользователь входит /, деление выполняется по числам.
    • Если пользователь вводит любой другой символ, печатается код по умолчанию.

Обратите внимание, что breakоператор используется внутри каждого caseблока. На этом switchзаявление заканчивается .

Если breakоператор не используется, caseвыполняются все случаи после правильного .

Интересные статьи...