Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Shpory_po_programmirovaniyu_33_33_33_33_33.doc
Скачиваний:
44
Добавлен:
20.09.2019
Размер:
1.36 Mб
Скачать

23. Команда выбора. Операторы switсh и break.

Выбор из многих вариантов можно сделать с помощью вложенных операторов if- else. Более удобный способ – использование операторов switch и break. Общий вид оператора выбора :

switch (i)

{

case k1 : op1;

[ break;]

case k2 : op2;

[ break;]

case kn : opn;

[ break;]

[ default : opn+1;]

}

Здесь i – любое выражение, дающее целое значение ( в том числе – символьное);

k1, k2, …, kn – константы или константные выражения - возможные значения i (например, 2*g, 'a'-'b', '1") – записываются после слова case;

op1, op2, …, opn, opn+1 – простые или составные операторы языка.

Выполнение оператора switch:

  1. Вычисляется значение выражения i.

  2. Значение i сравнивается с k1, k2, …, kn.

  3. При совпадении i со значением ki выполняется оператор opi. Затем управление передается оператору, стоящему после следующего case, если после opi нет оператора break. Если после оператора opi есть оператор break, то управление передается на оператор, следующий после оператора switch.

  4. Если i не совпало ни с одним k1, k2, …, kn, то выполняется оператор opn+1, стоящий после default, а затем оператор, следующий после оператора switch. При отсутствии default выполняется следующий после switch оператор.

24. Понятие цикла. Типы циклов.

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

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

Циклы состоят из следующих частей:

подготовки к выполнению цикла (присваивания параметрам цикла начальных значений);

определения момента завершения цикла (условия повторения цикла);

тела цикла, включающего:

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

подготовку данных для очередного шага цикла (изменение параметров цикла).

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

В языке Си циклы программируются с помощью трех разных операторов for, while, do-while. Возможно принудительное завершение текущей итерации и цикла в целом. Для этого служат операторы break, continue, return, goto. Передавать управление извне внутрь цикла не рекомендуется.

Использование оператора goto приводит к созданию запутанного, трудно читаемого кода, прозванного программистами "спагетти". Использование оператора goto среди программистов считается верхом неприличия. Чтобы избежать оператора goto, используют сложные условия повторения цикла.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]