Оператор цикла с последующим условием
Оператор цикла с предварительным условием
Оператор множественного выбора
Если в программе необходимо выбрать один из многочисленных вариантов, то вместо вложенной конструкции 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 состоит в том, что тело цикла выполняется хотя бы один раз, так как проверка условия продолжения осуществляется после выполнения операторов, образующих тело цикла.
Тело оператора цикла с последующим условием, как и тело оператора цикла с предварительным условием, обязательно должно содержать действия, влияющие на результат выполнения выражения, являющегося условием выхода из цикла (входа в цикл). Иначе цикл становится "бесконечным".