switch ( выражение )
{
case c1 :
/* Переходим сюда, если выражение == c1 */
break ;
case c2 :
/* Переходим сюда, если выражение == c2 */
break ;
default :
/* Если ни одно условие не выполнено, переходим сюда */
}
Значением выражения должно быть целое число ( int , long или char ); c1 , с2 , с3 должны быть константами. Инструкция switch выполняется следующим образом: сначала вычисляется значение выражения, а затем оно сравнивается с константами, указанными после служебного слова case . Если константа соответствует значению выражения, то программа передаёт управление этой ветви. Если ни один вариант не подходит, выполняется условие default .
_________________
77 стр. Глава 5. Операторы управления программой
Рассмотрим для примера следующий фрагмент программы:
cout << "Введите 1, 2 или 3:" ;
cin >> choice ;
switch ( choice )
{
case 1 :
/* Обработка случая "1" */
break ;
case 2 :
/* Обработка случая "2" */
break ;
case 3 :
/* Обработка случая "3" */
break ;
default :
cout << "Вы ввели не 1, не 2 и не 3\n"
}
Ещё раз напомню, что инструкция switch эквивалентна усложнённой инструкции if ( с вложенными if -инструкциями ) ; однако, если рассматривается более двух-трёх случаев, структура switch оказывается нагляднее.

«Для выхода из инструкцииswitch необходимо использовать командыbreak , иначе управление будет переходить от одного случая к следующему.»
[ Советы ]
_________________
78 стр. Часть 1. Первое знакомство с С++
Часть 2. СТАНОВИМСЯ ФУНКЦИОНАЛЬНЫМИ ПРОГРАММИСТАМИ...79
ОГЛАВЛЕНИЕ
СОДЕРЖАНИЕ
Глава 6. СОЗДАНИЕ ФУНКЦИЙ...81
Глава 7. ХРАНЕНИЕ ПОСЛЕДОВАТЕЛЬНОСТЕЙ В МАССИВАХ...92
Глава 8. ПЕРВОЕ ЗНАКОМСТВО С УКАЗАТЕЛЯМИ В С++...105
Глава 9. ВТОРОЕ ЗНАКОМСТВО С УКАЗАТЕЛЯМИ...117
Глава 10. ОТЛАДКА ПРОГРАММ НА С++...128


В этой части...
Выполнять операции сложения или умножения ( и даже логические операции ) — это одно, а писать настоящие программы — это нечто совсем иное. Из этой части вы узнаете о том, как стать настоящим программистом.
Программу BUDGET1 вы сможете найти на прилагаемом компакт-диске. Эта программа демонстрирует концепцию функционального программирования. После того как вы разберётесь с рассматриваемыми в этой части концепциями, имеет смысл обратиться к указанной программе и соответствующей документации.
_________________
80 стр. Часть 2. Становимся функциональными программистами
Глава 6. СОЗДАНИЕ ФУНКЦИЙ...81
ОГЛАВЛЕНИЕ
В этой главе...
► Написание и использование функций 81
►Подробный анализ функций 84
►Перегрузка функций 88
►Определение прототипов функций 89
►Хранение переменных в памяти 90
►Использование заголовочных файлов 91
Очень часто при написании программ возникает необходимость разделить большую программу на меньшие части, отлаживать которые намного легче. Программы из предыдущих глав слишком малы, чтобы можно было по-настоящему оценить пользу такого разделения. Но реальные программы из больших проектов состоят из тысяч ( и даже миллионов! ) строк. Поэтому большие программы просто невозможно написать, не разбивая их на отдельные модули.
С++ позволяет разделить код программ на части, называемые функциями. Сами функции могут быть записаны и отлажены отдельно от остального кода программы.
Возможность разбивать программу на части с последующей отладкой каждой функции в отдельности существенно снижает сложность создания больших программ. Этот подход является, по сути, простейшей формой инкапсуляции ( см. главу 15, "Защищённые члены класса: не беспокоить!", где вопросы инкапсуляции рассматриваются подробнее. )
Читать дальше