Оператор выбора switch

Оператор switch позволяет выбрать одну из нескольких альтернатив. Он записывается в следующем виде:

switch (выражение)

{case константа1, вариант 1; break;

. . .

case константа n, вариант n; break;

default: вариант n+1; break;}

 
  Оператор выбора switch - student2.ru

На рис.2 представлена соответствующая иллюстрация.

В операторе switch вычисляется целое выражение в скобках ( его называют селектором), и его значение сравнивается со всеми константами. При совпадении выполняется соответствующий вариант (одна или несколько инструкций). Все константы в записи оператора должны быть различными. Вариант с ключевым словом default (прочие) реализуется, если ни один другой не подошел (если слово default отсутствует, а все результаты сравнения отрицательны, то ни один вариант не выполняется. Для прекращения последующих проверок после успешного выбора некоторого варианта используется оператор break, обеспечивающий немедленный выход из оператора switch.

Например:

#include <stdio.h>

#include <conio.h>

#include <math.h>

#include <iostream.h>

main( )

{

char y;

printf ("Input y\n");

scanf("%c",&y);

switch(y)

{

case '1':

printf("branch 1\n");

break;

case '2':

case '3':

printf("branch 2 or 3\n");

break;

default:

printf("branches 1,2,3 do not work\n");

}

getch ();

return 0;

}

Оператор scanf вводит переменную y. Ее значение в операторе switch сравнивается со всеми константами операторов case. Если ввести символ ‘1’, то на экране появится строка:

Ветвь 1

по оператору break произойдет выход из переключателя switch, и программа завершит свою работу. Если ввести символы ‘2’ или ‘3’, то на экран будет выведена строка:

Ветвь 2 или 3

При вводе любого другого символа управление перейдет к ключевому слову default и на экране появится строка:

Ветви 1,2,3 не работают.

Задание

2.1. Из таблицы 3 взять задание по варианту и написать программу, используя оператор условного перехода.

2.2. Из таблицы 4 взять задание по варианту и написать программу, используя оператор выбора. Для выбора четвертой ветви использовать вариант с ключевым словом default.

Таблица 3

№ варианта Содержание Исходные данные
1. Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru a=2 b=1,5 c=1 d=3 e=0,5
2. Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru c=-2 a=1,5 d=2 x=3
3. Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru a=5 b=1,2 y= 0,6
4. Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru d=2 a=3,5 x=3 i=2,3
5. Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru w=1 x=2,5 a=4 b=0,4
6. Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru a=0,5 b=2 h=4 R=1,4
7. Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru p=0,6 l=2 h=5 R=4
8. Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru x=0,63 c=1,5 d=2 a=0,37
9. Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru y=2,6 x=1,6 a=0,4
10. Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru a=1,5 b=2 x=0,5
11. Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru x=0,5 a=4,3 y=2,6 d=0,3
12. Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru a=3 y=2,7 i=2 x=1
13. Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru x=0,73 y=0,4 t=2,6
14. Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru a=2 x=0,54 c=2,3 b=1,8 R=3
15. Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru x=0,4 a=0,88 c=3,6
16. Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru a= -1 b=0,8 x=1 c= -0,7
17. Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru x=2 y=3,5 a=0,1 b=4
18. Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru x=0,8 y=0,2 a=4 b=5 t=1
19. Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru y=2 a=0,5 x=1,8 b=0,6
20. Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru x=1,8 y=2 t=4 a=1,5 R=4,6 b=0,3


Таблица 4

№ варианта Содержание Исходные данные
Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru
Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru
Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru  
Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru
Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru
Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru  
Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru
Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru  
Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru    
Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru  
Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru
Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru
Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru
Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru
Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru
Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru
Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru  
Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru
Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru
Оператор выбора switch - student2.ru Оператор выбора switch - student2.ru

Литература

1. Подбельский В.В. Язык Cu ++: Учебное пособие. - М.: Финансы и статистика,1995, -560 с.

2. Страуструп Б. Язык программирования Сг ++. - М.: Радио и связь, 1991. - 352 стр.

3. Собоцинский В.В. Практический курс Turbo Cu ++. Основы объктно- ориентированного программирования. - М.: Свет, 1993. - 236 с.

4. Романов В.Ю. Программирование на языке Cu ++. Практический подход. - М.: Компьтер, 1993. - 160 с.

5. Уинер Р. Язык турбо Cu . - М.: Мир, 1991. - 384 с.

6. Юлин В.А., Булатова И.Р. Приглашение к Cu. - Мн.: Высш. Шк., 1990,- 224 с.

7. Котлинская Г.П., Галиновский О.И. Программирование на языке Cu. -Мн.: Высш. Шк., 1991. - 156 с.

Наши рекомендации