Условный оператор. Условный оператор служит для бинарного ветвления фрагмента исходного кода программы, в зависимости от условия («истина» или «ложь») выполняется или один

 

Условный оператор служит для бинарного ветвления фрагмента исходного кода программы, в зависимости от условия («истина» или «ложь») выполняется или один фрагмент кода (оператор) или другой фрагмент кода (оператор).

Формат условного оператора:

if (<выражение>) <оператор1>

[ else <оператор2> ]

Примечание. Далее при записи форматов различных конструкций примем следующие обозначения: оператор или выражение заключаем в скобки <>, точка с запятой («;») после оператора при описании формата не ставится, так как считается, что она входит в состав оператора, или это составной оператор (блок), а элемент, заключенный в квадратные скобки [] (за исключением использования массивов), считается необязательным, т.е. может отсутствовать.

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

Пример:

if (x>=0) y=x; else y=-x; // Переменной y присваивается значение модуля x

Если необходимо объединить несколько операторов, то они объединяются в составной оператор (блок).

Пример:

if (x>0) { y=x; z=x+y; }

else { y=-x; z=x*x+y*y; }

Условный оператор может быть неполным, часть, начинающаяся с else, отсутствует. В этом случае в зависимости от условия или выполняется оператор после if или он не выполняется.

Представляют интерес вложенные условные операторы. Рассмотрим пример:

if (x==1) if (y==1) printf(“x==1 and y==1”);

else printf(“x==1 and y!=1”);

В этом примере ключевое слово else относится ко второму if, первый оператор if является не полным. Следует отметить, что условный оператор if … else … считается одним оператором, он может быть сам внутри условного оператора или быть внутри тела цикла. Правило, позволяющее найти соответствие между if и else в случае вложенных условных операторов, следующее: ищем первое ключевое слово else, оно относится к ближайшему if, которое предшествует ему, ко второму else относится if, которое предшествует отмеченному ранее if и т.д.

Если требуется изменить описанный порядок соответствия if и else при вложенных условных операторах, то с помощью фигурных скобок необходимо организовать составной оператор. В примере:

if (x==1) { if (y==1) printf(“x==1 and y==1”); }

else printf(“x!=1”);

ключевое слово else относится к первому if, второй оператор if является не полным, поэтому после else печатаем x не равно 1, а значение переменной y может быть любым.

 








Дата добавления: 2015-08-14; просмотров: 755;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.005 сек.