Операция проверки условия в языке Си осуществляется с использованием оператора if. Общая форма записи
if(выражение){
блок операций 1; } else {
блок операций 2; }
Если выражение истинно, то выполняется блок операций 1, иначе выполняется блок операций 2. Блок операций может состоять из одной операции. В этом случае наличие фигурных скобок, ограничивающих блок, необязательно.
Такая структура представляет собой полную развилку.
Оператор if может также применяться в случае неполной развилки. При этом форма записи этого условного оператора будет следующей:
if(выражение){ блок операций 1; }
Пример
#include <stdio.h> int main() {
int k;
printf("k= ");
scanf("%d",&k);
if(k >= 5) {
printf("%d >= 5", k);
} else {
printf("%d < 5", k);
}
getchar(); getchar();
return 0; }
Оператор if может быть вложенным.
Пример:
#include <stdio.h> #include <stdlib.h> int main() {
int key;
system("chcp 1251");
system("cls");
printf("Введите номер пункта, 1 или 2: ");
scanf("%d",&key);
if (key == 1)
printf("\n Выбран первый пункт");
else if (key == 2)
printf("\n Выбран второй пункт");
else
printf("\n Первый и второй пункты не выбраны");
getchar(); getchar();
return 0; }
Результат выполнения
При использовании вложенной формы оператора if опция else связывается с последним оператором if. Если требуется связать опцию else с предыдущим оператором if, внутренний условный оператор заключается в фигурные скобки: