Условные операторы языка С if и switch .

 

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

Синтаксис оператора if :

if (выражение)

<оператор>

Если значение параметра «выражение» равно «истинно», выполняется оператор, иначе он пропускается программой. Следует отметить, что «выражение» является условным выражением, в котором выполняется проверка некоторого условия. В таблице 2 представлены варианты простых логических выражений оператора if:

 

Таблица 2. Простые логические выражения .

 

if(a < b) Истинно, если переменная a меньше переменной b и ложно в противном случае.
if(a > b) Истинно, если переменная a больше переменной b и ложно в противном случае.
if(a == b) Истинно, если переменная a равна переменной b и ложно в противном случае.
if(a <= b) Истинно, если переменная a меньше либо равна переменной b и ложно в противном случае.
if(a >= b) Истинно, если переменная a больше либо равна переменной b и ложно в противном случае.
if(a != b)   Истинно, если переменная а не равна переменной b и ложно в противном случае.  
if(a) Истинно, если переменная а не равна нулю, и ложно в противном случае.  

 

П ример :

Программа определения знака введенного числа.

#include <stdio.h>

int main()

{ float x;

printf("Введите число: ");

scanf("%f",&x);

if(x < 0)

printf("Введенное число %f является отрицательн ы м.\ n ", x);

if(x >= 0)

printf("Введенное число %f является неотрицательным.\ n ", x);

return 0;

}

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

if (выражение)

<оператор1>

else

<оператор2>

которая интерпретируется таким образом. Если «выражение» истинно, то выполняется «оператор1», иначе выполняется «оператор2».

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

if (выражение)

{ <список операторов>}

else

{ <список операторов>}

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

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

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

else <оператор3>

До сих пор рассматривались простые условия типа x<0. Вместе с тем оператор if позволяет реализовывать более сложные условные переходы.

 

В языке С имеются три логические операции: