Программирование на C и C++

Онлайн справочник программиста на C и C++

Лесенка if-else-if

Типичной программистской конструкцией является лесенка if-else-if. Она выглядит следующим образом:

if (выражение)
оператор;
else if (выражение)
оператор;
else if (выражение)
оператор;

...

else
  оператор;

Условия вычисляются сверху вниз. Когда обнаруживается истинное условие, то выполняется оператор, связанный с этим условием, а остальная часть конструкции игнорируется. Если не найдено ни одного истинного условия, выполняется оператор, соответствующий последнему else. Последний оператор else часто играет роль оператора, выполняемого по умолчанию, то есть, если все условия ложны, то выполняется оператор, соответствующий последнему else. Если последний оператор else отсутствует, то не выполняется никаких действий в случае ложности всех условий. Использование лесенки if-else-if преобразует нашу программу следующим образом:

#include <stdio.h>

/* программа "угадай число 4" */

int main (void)
{
int magic = 123; /* искомое число */
int guess;

printf ("Enter your guess: ");
scanf {"%d", &guess);

if(guess == magic) {
printf ("** Right ** ") ;
printf("%d is the magic number", magic);
}
else if(guess > magic)
   printf (ff. . Wrong . . Too High");
else printf (".. Wrong .. Too low");
return 0;
}