Цикл for
Цикл do
Цикл while
Операторы цикла
Оператор безусловного перехода
Формат оператора:
goto метка;
где метка – идентификатор, помещаемый слева от оператора и отделенный от него двоеточием. Управление передается безусловно на оператор в теле той же функции.
Цикл while (цикл с предусловием) имеет вид:
while (выражение _условие) тело_цикла
В качестве выражения_условия чаще всего используется отношение или логическое выражение. Если оно истинно, т.е. не равно 0, то тело цикла вьшолняется до тех пор, пока выражение_условие не станет ложным.
Выражение_условие может быть и арифметическим выражением. В этом случае цикл выполняется, пока значение выражения_условия не равно 0. Выход из цикла возможен по операторам break и return.
Цикл do (цикл с постусловием) имеет вид:
do
тело_цикла
while (выражение_условие);
Выражение _условие логическое или арифметическое, как и в цикле while. В цикле do тело цикла всегда выполняется по краиней мере один раз. После каждого выполнения тела цикла проверяется истинность выраженпя_условия (на равенство 0), и если оно ложно (т.е. равно 0), то цикл заканчивается. В противном случае тело цикла выполняется вновь. Выход из цикла возможен по операторам break и return.
|
|
Цикл for(называемый параметрическим) имеет вид:
for (выражение_1; выражение_условие_2; выражение_3)
тело_цикла
Все выражения цикла for необязательны, и могут использоваться программистом по его усмотрению.
Пример
for (;;;)
;
Это пример бесконечного цикла.
Первое и третье выражения в операторе for могут состоять из нескольких выражений, разделенных запятыми. Выражение_1 определяет действия, выполняемые до начала цикла, т.е. задает начальные условия для цикла; чаще всего это выражение присваивания. Выражение_условие_2 - обычно логическое или арифметическое. Оно определяет условия окончания или продолжения цикла. Если оно истинно (т.е. не равно 0), то выполняется тело цикла, а затем вычисляется выражение_3. Выражение_3 обычно задает необходимые для следующей итерации изменения параметров или любых переменных тела цикла. После выполнения выражения_3 вычисляется истинность выражения_условия, и все повторяется. Таким образом, выражение_1 вычисляется только один раз, а выражение_условие_2 и выражение_3 вычисляются после каждого выполнения тела цикла. Цикл продолжается до тех пор, пока не станет ложным выражение_условие_2. Выход из цикла возможен по операторам break и return.
Оператор break прекращает выполнение оператора цикла и передает управление следующему за циклом оператору. Такой оператор дает возможность построить цикл с проверкой внутри тела цикла.
|
|
Оператор continue противоположен по действию оператору break и позволяет в любой точке тела цикла перейти к проверке условия продолжения цикла. Это удобно когда тело цикла содержит ветвления. Пояснения эти операторам даны на структурных схемах операторов цикла на рис 2.4.1
Рис. 2.4.1. Схемы выполнения в циклах операторов break и continue. а) - цикл с предусловием while; б) - цикл с постусловием do;в) - параметрический цикл for