►Инструкция выбора...77

Последняя управляющая инструкция эффективна, если существует необходимость выбора при ограниченном количестве возможных вариантов. Она похожа на усложнённую инструкцию if, которая вместо проверки одного условия анализирует множество разных возможностей:

    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 "

    }

Ещё раз напомню, что инструкция switch эквивалентна усложнённой инструкции if ( с вложенными if-инструкциями ) ; однако, если рассматривается более двух-трёх случаев, структура switch оказывается нагляднее.

«Для выхода из инструкции switch необходимо использовать команды break, иначе управление будет переходить от одного случая к следующему.»

[Советы]

_________________

78 стр. Часть 1. Первое знакомство с С++