Имеет синтаксис:
if (Условие)
{
инструкция1_1;
инструкция1_2;
...;
инструкция 1_n;
}
else
{
инструкция2_1;
инструкция2_2;
...;
инструкция2_k;
}
Если в программе встречается такая конструкция, то сначала компьютер вычисляет, чему равно выражение, обозначенное как Условие.
Если оно равно 1 (истина), то выполняется набор инструкций инструкция1_1, инструкция 1_2,...., инструкция 1_n.
Если оно равно 0 (ложь), то выполняется набор инструкций
инструкция2_1, инструкция2_2,...., инструкция2_k.
Например, вычисление и выводквадратного корня переменной a:
if (a>=0)
{
float b;
b = sqrt (a);
printf("Koren' a = %f", b);
}
else
{
printf("Oshibka");
}
Как выполняется такой кусок кода?
Сначала считается значение условия, т. е. значение (a>=0).
Если значение (a>=0) равно истине, то выполняется последовательность инструкций
float b;
b = sqrt (a);
printf("Koren' a = %f", b);
Если значение (a>=0) равно лжи, то выполняется последовательность инструкций
printf("Oshibka");
Условный оператор с одной ветвью
Имеет синтаксис:
if (Условие)
|
|
{
инструкция1;
инструкция2;
...;
инструкцияN;
}
Если значение выражения, обозначенного Условие — истина, то выполняется набор инструкций инструкция1, инструкция2,..., инструкцияN.
Если значение выражения, обозначенного Условие — ложь, то указанный набор инструкций не выполняется.
Например, следующий участок кода вычисляет и печатает значение корня из a, если a больше или равно нулю. В противном случае ничего не делает.
if (a>=0)
{
float b;
b = sqrt (a);
printf("Koren' a = %f", b);
}