Условный оператор if()
Условный оператор применяется в том случае, если есть необходимость вычислений различных выражений в зависимости от выполнения или невыполнения определённого условия. Синтаксис условного оператора:
if (<условие>)
<оператор1, выполняемый при истинности (выполнении) условия>
else
<оператор2 , выполняемый при ложности (не выполнении) условия>
После if(<условие>) и else точка с запятой не ставится. Оператор1 и оператор2 – это либо простой, либо составной оператор, т.е. операторные скобки ставятся в том случае, если после if() или else записано несколько операторов, относящихся к if() или else соответственно; если же записан один оператор после if() или else, то операторные скобки не ставятся.
Условием может быть логическое или арифметическое выражение. Логическое выражение – это два операнда, соединенные логической операцией (&& (логическое И), || (логическое ИЛИ), !(логическое НЕ)) и/или операцией отношения (<, <=, >, >=, ==, !=). Результаты логических операций приведены в табл.5.
Таблица 5 | ||||
Значение операнда1 (оп1) | Значение операнда2 (оп2) | Результат операций | ||
!(оп1) | (оп1) && (оп2) | (оп1) || (оп2) | ||
Логические выражения применяются для определения истинности или ложности определенных ситуаций. Результатом вычислений логического выражения является целое число: 1 – случай истинности; 0 – случай ложности. Если значение выражения, указанного в условии оператора if() не равно нулю, то условие считается истинным, и выполняется оператор1, следующий за if(). Допустима сокращённая форма условного оператора, в которой отсутствует else и оператор2. В этом случае при ложности проверяемого условия никакие действия не выполняются. В свою очередь, оператор1 и оператор2 могут быть условными, что позволяет организовать цепочку проверок условий любой глубины вложенности. В этих цепочках каждый из условных операторов может быть как полным условным, так и иметь сокращённую форму записи. При этом могут возникать ошибки неоднозначного сопоставления if() и else. Синтаксис языка предполагает, что при вложенных условных операторах каждое else соответствует ближайшему к нему предшествующему if().
Типичной конструкцией разветвляющегося вычислительного процесса является лесенка if-else-if. Она выглядит следующим образом:
if(<условие>)
{
операторы;
}
else
if(<условие>)
{
операторы;
}
else
if(<условие>)
{
операторы;
}
·
·
·
else
{
операторы;
}
Условия вычисляются сверху вниз. Когда обнаруживается истинное условие, то выполняется оператор, связанный с этим условием, а остальная часть конструкции игнорируется. Если не найдено ни одного истинного условия, выполняется оператор, соответствующий последнему else. Если последний оператор else отсутствует, то не выполняется никаких действий в случае ложности всех условий.
Дата добавления: 2015-08-08; просмотров: 884;