Структура множественного выбора switch C++
Общий синтаксис оператора:
switch(выражение){
case значение1:
действие1;
break;
case значение2:
действие2;
break;
case значение3:
действие3;
break;
......
default:
действие_по_умолчанию;
break;
}
Оператор switch достаточно прост в обращении, однако необходимо знать некоторые особенности его работы:
- Выражение - те данные, которые необходимо проверить на соответствие. Здесь может указываться переменная (но только типа char или целочисленная), либо выражение, результатом которого являются целочисленные данные.
- Если в case используются символьные значения, они должны указываться в одинарных кавычках, если целочисленные, то без кавычек.
- Оператор default может располагаться в любом месте системы switch, выполняться он все равно будет в том случае, если нет ни одного совпадения. Однако правилом "хорошего тона" является указывать default в конце всей конструкции.
- В случае, если необходимо выполнять один и тот же набор действий для разных значений проверяемого выражения, можно записывать несколько меток подряд.
- После самого последнего оператора в списке (будь то case или default) оператор break можно не указывать.
- Оператор default можно вообще не указывать, в случае, если не найдется совпадений, просто ничего не произойдет.
- в case мы пишем фигурные скобки {} только в том случае, если объявляем переменные и хотим ограничить область их видимости.
Если случайно пропустить break в любом блоке case, кроме последнего, и этот блок в последствии отработает, то выполнение switch не остановиться. Тот блок оператора case, который будет идти вслед за уже выполнившимся, так же выполниться без проверки.
# include <iostream>
using namespace std;
void main(){
// объявление переменной, для хранения буквенной оценки
char cRate;
// просьба ввести буквенную оценку
cout<<"Input your char-rate\n";
cin>>cRate;
//анализ введенного значения
switch (cRate) {
case 'A':
case 'a':
// оценка A или a равноценна 5
cout<<"Your rate is 5\n";
break;
case 'B':
case 'b':
// оценка B или b равноценна 4
cout<<"Your rate is 4\n";
break;
case 'C':
case 'Y':
case 'k':
case 'c':
// оценка C или c равноценна 3
cout<<"Your rate is 3\n";
break;
case 'D':
case 'd':
// оценка D или d равноценна 2
cout<<"Your rate is 2\n";
break;
default:
// остальные символы некорректны
cout<<"This rate isn't correct\n";
}
}
Рекомендуемые обзоры инструментов
Aurorium AI: Обзор и отзывы
Инновационный браузер с поддержкой ИИ
Undetectable Browser: Честный обзор
Бесконечные профили для арбитража
Браузер Vision: Реальные отзывы
Надежное решение для мультиаккаунтинга
Dolphin {anty}: Обзор функционала
Лидер рынка для арбитражников
📌 Умный подбор сервера: Официальный инструмент проекта
DIEG — агрегатор
DIEG Finder.
Это часть единой экосистемы, созданной для того, чтобы помочь быстро найти и сравнить по параметрам подходящий VPS/VDS сервер для любых задач хостинга.
📌 Инфраструктура для разработчиков:
Для тестирования скриптов, установщиков VPN и Python-ботов рекомендуем использовать надежные VPS на короткий срок.
Подробнее о быстрой аренде VPS для экспериментов читайте здесь.