if () ;

Полная форма выглядит несколько иначе.

if () ; else ;

Если (if) условие в скобках () в результате вычисления дает результат типа bool со значением true, то выполняется выражение , иначе будет выполнено выражение . Пример использования этой конструкции приведен в листинге 4.10. Листинг 4.10

void fother () {

char mstr[20];

mstr[0]= \0;

int a = 5;

if (a>5) //Если a>5

{

strcat(mstr, «a>5»); //содержимым строки будет «a>5»

}

else //иначе

{

if (a =5) //Если а=5

{

strcat(mstr, «a=5»); //содержимым строки будет «a=5»

}

else //иначе

{

strcat(mstr, «a<5»); //содержимым строки будет «a<5»

};

};

}

Приведенный пример демонстрирует применение инструкций if…else. В листинге показано, что инструкции могут быть вложенными. Следует обратить внимание, что если в качестве выражений фигурируют блоки, то точка с запятой ставится только в конце инструкции. switch (переключатель)

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

Ее синтаксис приведен ниже:

switch () {

case : ; [break;]

default: ;

}

В этом определении показано, как переменная передается инструкции switch. Если значение переменной соответствует одному из значений константы case, то выполняется соответствующее выражение, которое может быть завершено инструкцией. Если не было найдено значения переменной, соответствующее одной из констант case, то выполняется ветвь default. Каждую из ветвей желательно завершать инструкцией break, иначе возможно выполнение сразу нескольких ветвей. Ветвь default может отсутствовать в конструкции switch. Работа оператора switch проиллюстрирована в блоке 11 рассматриваемого примера. При помощи этого оператора происходит выполнение той или иной функции в зависимости от того, какая клавиша была нажата на клавиатуре. while Инструкция while предназначена для организации цикла, в котором тело цикла может ни разу не быть выполнено. Это зависит от значения переменной продолжения цикла. Синтаксис этой инструкции приведен ниже.

while ()

Инструкция statement будет выполняться до тех пор, пока будет оставаться верным условие condition. Пример подобного цикла приведен ниже.

while (*p == ) p++; do while Инструкция do while предназначена для организации цикла, в котором тело цикла будет выполнено хотя бы один раз. Синтаксис этой инструкции приведен ниже.

do while ()

Инструкция statement будет выполняться до тех пор, пока будет выполняться условие condition. for Инструкция for предназначена для организации параметрического цикла. Синтаксис этой инструкции приведен ниже.

for (]; ]; ])

В секции выполняется инициализация переменной цикла, в секции устанавливается условие, а в секции обуславливается механизм изменения переменной цикла. Блок инструкций является телом цикла. Пока условие соблюдается , цикл будет выполняться. Пример инструкции for приведен ниже.

for (int i = 0; i < 10; i++){

sprintf(nn, «%d», i);

strcat(mm, nn);

strcat(mm, " ");

}

break

Инструкция break прерывает выполнение инструкций switch, for, while или do и передает управление следующему блоку инструкций.

continue

Эта инструкция прерывает только текущую итерацию цикла и передает управление следующей итерации.

goto Инструкция goto предназначена для передачи управления на произвольную инструкцию программы, которая должна быть помечена соответствующей меткой. Это может быть в том числе и инструкция объявления имени. Заметим, что метка может быть только локальной, в качестве метки может выступать любое необъявленное до сих пор имя с двоеточием после него. Синтаксис конструкции приведен ниже.

identifier:

goto ;

return Эта инструкция предназначена для выхода из текущей функции и возврата в то место, откуда эта функция была вызвана. При необходимости она может возвращать значение. Синтаксис этой конструкции приведен ниже.

return [];

Перейти на страницу:

Похожие книги