Мегаобучалка Главная | О нас | Обратная связь


Оператор выбора альтернатив (переключатель) switch .



2019-08-13 189 Обсуждений (0)
Оператор выбора альтернатив (переключатель) switch . 0.00 из 5.00 0 оценок




Оператор switch (переключатель) предназначен для разветвления процесса вычислений на несколько направлений.

Общий вид оператора:

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

case константа1:     список операторов 1

case константа2:     список операторов 2

                       ...

case константаN:    список операторов N

default: список операторов N+1      – необязательная ветвь;

}

 

Выполнение оператора начинается с вычисления выражения, значе-ние которого должно быть целого или символьного типа. Это значение сравнивается со значениями констант и используется для выбора ветви, которую нужно выполнить.

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

Все константы должны иметь разные значения, но быть одного и то-го же типа. Несколько меток могут следовать подряд, и тогда переход в указанную ветвь будет происходить при совпадении хотя бы одной из них. Порядок следования ветвей не регламентируется.

В случае несовпадения значения выражения ни с одной из констант выбора происходит переход на метку default либо, при ее отсутствии, к оператору, следующему за оператором switch.

Управляющий оператор break (разрыв) выполняет выход из опера-тора switch. Если по совпадению с каждой константой должна быть выпол-нена одна и только одна ветвь, схема оператора switch следующая:

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

                  case константа1: операторы 1; break;    

                  case константа2: операторы 2; break;

                                 ...     

                       case константаN: операторы N; break;

         default: операторы (N+1); break;        

              }

16. Операция ",".

Данная операция используется при организации строго гарантиро-ванной последовательности вычисления выражений (обычно используется там, где по синтаксису допустима только одна операция, а необходимо разместить две и более, например, в операторе for). Форма записи:

              выражение_1, …, выражение_N;

выражения 1, 2,…, N вычисляются последовательно друг за другом и ре-зультатом операции становится значение последнего выражения N, напри-мер:

              m = ( i = 1, j = i ++, k = 6, n = i + j + k );

получим последовательность вычислений: i =1, j = i =1, i = 2, k = 6, n = 2+1+6, и в результате m = n = 9.

В заключение отметим следующую особенность языка Си – любые операции допускаются только со скалярными объектами, причем небольшого размера, порядка размера регистров процессора. Это объясняется ориентацией языка на задачи системного программирования. Любые действия с составными или сложными объектами – массивами, строками, структурами и т.п. реализуются с помощью стандартных библиотечных функций, работа с которыми будет рассмотрена позже.

Циклический алгоритм. Оператор с предусловием while.

Цикл с предусловием реализует структурную схему, приведенную на рис. 7.1, а, и имеет вид

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

код цикла;

Выражение определяет условие повторения кода цикла, представ-ленного простым или составным оператором.

Если выражение в скобках – истина (не равно 0), то выполняется код цикла. Это повторяется до тех пор, пока выражение не примет значение 0 (ложь). В этом случае происходит выход из цикла и выполняется опера-тор, следующий за конструкцией while. Если выражение в скобках изна-чально ложно (т.е. равно 0), то цикл не выполнится ни разу.

Код цикла может включать любое количество операторов, связанных с конструкцией while, которые нужно заключить в фигурные скобки (орга-низовать блок), если их более одного.

Переменные, изменяющиеся в коде цикла и используемые при про-верке условия продолжения, называются параметрами цикла. Целочислен-ные параметры цикла, изменяющиеся с постоянным шагом на каждой ите-рации, называются счетчиками цикла.

Начальные установки могут явно не присутствовать в программе, их смысл состоит в том, чтобы до входа в цикл задать значения переменным, которые в этом цикле используются.

Оператор цикла с постусловием do - while.

Цикл с постусловием реализует структурную схему, приведенную на рис. 7.1, б.

Общий вид записи такой конструкции

do 

код цикла; 

while (выражение);

Код цикла будет выполняться до тех пор, пока выражение истинно. Все, что говорилось выше, справедливо и здесь, за исключением того, что дан-ный цикл всегда выполняется хотя бы один раз, даже если изначально вы-ражение ложно.

Здесь сначала выполняется код цикла, после чего проверяется, надо ли его выполнять еще раз.

Следующая программа будет «вас приветствовать» до тех пор, пока будем вводить символ Y или y (Yes). После введения любого другого сим-вола цикл завершит свою работу.

Оператор цикла с предусловием и коррекцией for.

Общий вид оператора:

     for (выражение 1; выражение 2; выражение 3)

код цикла;

где     выражение 1 – инициализация счетчика (параметр цикла);

выражение 2 – условие продолжения счета;

выражение 3 – коррекция счетчика.

На рис. 7.2, а представлена схема работы цикла for, а на рис. 7.2, б – символ блок-схемы, использующийся для его обозначения.



2019-08-13 189 Обсуждений (0)
Оператор выбора альтернатив (переключатель) switch . 0.00 из 5.00 0 оценок









Обсуждение в статье: Оператор выбора альтернатив (переключатель) switch .

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

Популярное:
Генезис конфликтологии как науки в древней Греции: Для уяснения предыстории конфликтологии существенное значение имеет обращение к античной...
Как выбрать специалиста по управлению гостиницей: Понятно, что управление гостиницей невозможно без специальных знаний. Соответственно, важна квалификация...
Как построить свою речь (словесное оформление): При подготовке публичного выступления перед оратором возникает вопрос, как лучше словесно оформить свою...



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (189)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.006 сек.)