Шрифт:
Форма записи:
do оператор while(выражение)
Оператор повторяется до тех пор, пока выражение не станет ложным, или нулем.
Пример:
do
scanf(" %d", &number) while(number != 20);
Использование операторов if для выбора вариантов
Ключевые слова: if, else
Общие замечания:
В каждой из следующих форм оператор может быть либо простым, либо составным оператором. Вообще говоря, "истинное" выражение означает выражение с ненулевым значением.
Форма 1:
if(выражение) оператор
Оператор выполняется, если выражение истинно.
Форма 2:
if(выражение)
оператор1 else
оператор2
Если выражение истинно, выполняется oпepaтop1. В противном случае выполняется оператор2.
Форма 3:
if(выражение1)
oпepaтop1 else if(выражение2)
оператор2 else
оператор3
Если выражение1 истинно, то выполняется oпepaтop2.
Если выражение1 ложно, но выражение2 истинно, выполняется оператор2.
Если же оба выражения ложны, выполняется оператор3.
Пример:
if(legs == 4)
printf(" Это, возможно, лошадь.\n");
else if(legs > 4)
printf(" Это не лошадь.\n");
else /* выполнить, если legs < 4 */
{ legs++;
printf(" Теперь у нее еще одна нога.\n");
}
Множественный выбор при помощи switch
Ключевое слово: switch
Общие замечания:
Управление программой переходит к оператору, имеющему значение выражения в качестве метки. Затем программа продолжает выполняться, проходя остальные операторы, если снова не произойдет переключения направления. И выражение, и метки должны иметь целые значения (включая тип char), а метки должны быть либо константами, либо выражениями, состоящими только из констант. Если ни одна метка не соответствует значению выражения, управление передается оператору, помеченному default, если он существует. В ином случае управление передается оператору, следующему за оператором switch.
Форма записи:
switch(выражение)
{
case метка1 : оператор1;
case метка2 : опeратор2;
default : оператор3;
}
Можно записывать более двух помеченных операторов, а вариант default не обязателен.
Пример:
switch(буква) {
case 'a' :
case 'е' : printf(" %d гласная\n", буква);
case 'с' :
case 'n' : printf(" %d в \" наборе саnе \" \n", буква);
default : printf(" Прекрасный день. \n");
}
Если буква имеет значение 'а' или 'е', печатаются все три сообщения; 'с' и 'n' вызывают печать двух последних строк. Все остальные значения приводят к печати последнего сообщения.
Переходы в программе
Ключевые слова: break, continue, goto
Общие замечания:
Эти три команды вызывают переход от одного оператора программы к другому, расположенному в ином месте (в теле программы).
break
Команду break можно использовать с любой из трех форм цикла и с оператором switch. Она приводит к тому, что управление программой "игнорирует" остаток цикла или оператор switch, содержащий этот остаток, и возобновляет выполнение с оператора, следующего за циклом или switch.