Оператор цикла с последующим условием

Оператор цикла с предварительным условием

Оператор множественного выбора

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

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

{case значение1: оператор1; break;

case значение2: oпepaтop2; break;

case значение3: оператор3; break;

default: // необязательный компонент

оператор_по_несравнению;

//если не было ни одного совпадения.}

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

Оператор break в каждом блоке выбора case осуществляет выход из оператора switch. Если оператор break будет опущен, т. e. если оператор switch будет записан в виде switch (выражение)

{case значение1: оператор1;

case значение2: oпepaтop2;

case значение3: оператор3;

} // end switch (выражение);

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

Лекция №5. ОРГАНИЗАЦИЯ ЦИКЛОВ В ЯЗЫКЕ С

В практике программирования циклом называют многократное автома­тическое выполнение некоторых действий (операторов). В языке С используются операторы цикла трех видов: с предвари­тельным условием, с последующим условием и с параметром.

Оператор цикла с предусловием выполняет повторяющиеся действия до тех пор, пока заданное условие истинно, и выглядит следующим образом:

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

оператор; оператор1;

оператор2;

операторN;

} //endwhile

Если анализируемое выражение с самого начала ложно, ни один из операторов, образующих тело цикла, не будет выполнен ни одного раза, т. e. цикл будет полностью пропущен.

Синтаксис оператора цикла с последующим условием (с постусловием) имеет следующий вид:

doилиdo {

{оператор;} оператор l;

while (выражение) оператор 2;

оператор N;

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

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

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

Тело оператора цикла с последующим условием, как и тело оператора цикла с предварительным условием, обязательно должно содержать дейст­вия, влияющие на результат выполнения выражения, являющегося услови­ем выхода из цикла (входа в цикл). Иначе цикл становится "бесконечным".