Лабораторная работа: Условные и безусловные операторы в языке программирования Си
else puts(""); /*демонстрация оператора if – else*/
if (a==b) puts(""); /*демонстрация оператора if без слова else*/
}
Если для выполнения программы ввести числа 5 и 3, то на экране появится строка:
а больше b
При введении чисел 5 и 5, на экране появится две строки:
a меньше или равно b
a равно b
Иногда в условном операторе после ключевых слов if или else следует инструкция if, ее называют вложенной. Слово else всегда относится к ближнему предшествующему ему if. Также после ключевых слов if и else вместо одной инструкции может быть записано несколько инструкций, которые должны заключаться в фигурные скобки.
Например, в
if (n>0)
if (a>b)
z=a;
else
z=b;
else относится к внутреннему if, что и показано с помощью отступов. Если требуется иная интерпретация, необходимо должным образом расставить фигурные скобки:
if (n>0)
{
if (a>b)
z=a;
}
else
z=b;
В данном примере else относится к внешнему if.
В сложных конструкциях, содержащих много if и else, уместно вложенные if обрамлять фигурными скобками.
Вместо вложенных конструкций if–else часто целесообразно использовать сложные выражения для проверки условия. Сложные выражения получаются путем объединения нескольких простых отношений с помощью логических операций. В языке СИ имеются три логические операции, приведенные в таблице 2.
Таблица 2
Операция | Смысл |
&& | и |
|| | или |
! | не |
Операция ! имеет очень высокий приоритет, он выше, чем умножения, и только круглые скобки имеют более высокий приоритет. Приоритет операции && выше, чем операции ||, а обе они имеют более низкий приоритет, чем операции отношения. Поэтому выражение
a>b&&b>c||b>d