Обычно при написании программы не рекомендуется использовать многократно вложенные друг в друга условные операторы, так как программа при этом становится громоздкой и трудно понимаемой. Для этих целей в языке C++ существует специальный оператор выбора. Его синтаксис:
switch (N)
{
case M1:S1;
break;
case M2: S2;
break;
……………………………..
default: S;
}
где N - переменная, называемая селектором или переключателем;
S1,...Si,S – операторы;
M1, M2,... - метки, которые отличаются по смыслу от меток,
описываемых в разделе label;
switch(переключатель),case(выбор), default (умолчание), end – служебные слова.
Отметим, что переключатель и метки должны быть одного и того же скалярного типа, за исключением вещественного.
Оператор switch передает управление тому оператору case, с одной из меток которого совпало значение селектора N и будут выполняться все строки программыпосле выбранного case до тех пор, пока не закончится тело блока оператора switch или не повстречается оператор break, а затем управление передается на оператор, следующий за скобкой «}». Если значение селектора N не совпало ни с одной из меток, то исполняется строки стоящие после оператора default - оператор S.
Ветвь оператора default является необязательной. Тогда при отсутствии в списке выбора нужной константы оператор switch завершит свою работу.