Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Otvety_na_bilety.doc
Скачиваний:
9
Добавлен:
01.04.2025
Размер:
1 Мб
Скачать
☆

Вопрос 5. Операторы цикла. Операторы передачи управления.

Циклические конструкции языка C++ используются для реализации многократно повторяющихся действий. Любой цикл состоит из следующих элементов:

- установка начальных значений переменных до входа в цикл;

- тело цикла;

- условие продолжения цикла;

- изменение параметров цикла.

While

while (условие) оператор;

Пока истинно (условие), выполнять оператор

Отметим, что поскольку выполнение условия проверяется перед телом цикла, то возможна ситуация, когда тело цикла, состоящее из оператора ни разу не выполнится. (если изначально условие ложно).

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

Условие всегда записывается в круглых скобках.

Do while

do

оператор

while (условие);

Выполнять оператор пока истинно (условие).

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

Условие всегда записывается в круглых скобках.

For

for (выражение_1;выражение_2;выражение_3)

оператор;

  • вычисляется значение выражения выражение_1;

  • пока истинно условие, задаваемое выражением выражение_2,

  • выполняется оператор, затем вычисляется выражение_3;

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

Замечание: Цикл for задает компактную запись всех составных элементов, входящих в цикл. Любой цикл while может быть приведен к эквивалентному ему циклу for и наоборот.

Операторы передачи управления

Операторы передачи управления применяются, когда необходимо нарушить есте­ственный порядок выполнения операторов.

goto метка;

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

- выход из большой вложенности циклов и переключателей;

- переход из нескольких разных мест программы в одно (например, в конец функции).

continue

Оператор continue используется только внутри операторов цикла. Оператор перехода к следующей итерации continue пропускает все оставшиеся операторы текущей итерации цикла и передает управление на начало следующей итерации цикла.

break

Оператор break используется внутри операторов цикла, if и swith для обеспечения выхода в точку программу, расположенную непосредственно за оператором, в котором он находится.