C if ... else Заява

У цьому підручнику ви дізнаєтесь про оператор if (включаючи if … else та вкладений if … else) у програмуванні на C за допомогою прикладів.

C if Заява

Синтаксис ifвисловлення в програмуванні на C такий:

 if (test expression) ( // statements to be executed if the test expression is true )

Як якщо оператор працює?

Оператор ifобчислює тестовий вираз усередині дужок ().

  • Якщо тестовий вираз оцінюється як істинний, ifвиконуються оператори всередині тіла .
  • Якщо тестовий вираз оцінено як хибний, оператори всередині тіла ifне виконуються.

Щоб дізнатись більше про те, коли тестовий вираз обчислюється як true (ненульове значення) і false (0), перевірте реляційні та логічні оператори.

Приклад 1: оператор if

 // Program to display a number if it is negative #include int main() ( int number; printf("Enter an integer: "); scanf("%d", &number); // true if number is less than 0 if (number < 0) ( printf("You entered %d.", number); ) printf("The if statement is easy."); return 0; )

Вихід 1

Введіть ціле число: -2 Ви ввели -2. Заява if легко.

Коли користувач вводить -2, тестовий вираз number<0оцінюється як істинний. Отже, ви ввели -2 відображається на екрані.

Вихід 2

 Введіть ціле число: 5 Оператор if легко.

Коли користувач вводить 5, тестовий вираз number<0обчислюється як false і оператор всередині тіла ifне виконується

C if… else Заява

Оператор ifможе мати необов’язковий elseблок. Синтаксис if… elseвисловлення:

 if (test expression) ( // statements to be executed if the test expression is true ) else ( // statements to be executed if the test expression is false )

Як якщо… інше твердження працює?

Якщо тестовий вираз оцінено як істинний,

  • ifвиконуються оператори всередині тіла .
  • оператори всередині тіла elseпропускаються з виконання.

Якщо тестовий вираз оцінено як хибний,

  • elseвиконуються оператори всередині тіла
  • оператори всередині тіла ifпропускаються з виконання.

Приклад 2: твердження if … else

 // Check whether an integer is odd or even #include int main() ( int number; printf("Enter an integer: "); scanf("%d", &number); // True if the remainder is 0 if (number%2 == 0) ( printf("%d is an even integer.",number); ) else ( printf("%d is an odd integer.",number); ) return 0; )

Вихідні дані

 Введіть ціле число: 7 7 - непарне ціле число.

Коли користувач вводить 7, тестовий вираз number%2==0оцінюється як false. Отже, оператор всередині тіла elseвиконується.

C якщо… ще Сходи

Оператор if… elseвиконує два різні коди залежно від того, чи є тестовий вираз істинним чи хибним. Іноді вибір повинен бути зроблений з більш ніж двох можливостей.

Сходи if … else дозволяють перевіряти між кількома тестовими виразами та виконувати різні оператори.

Синтаксис if … else Ladder

 if (test expression1) ( // statement(s) ) else if(test expression2) ( // statement(s) ) else if (test expression3) ( // statement(s) )… else ( // statement(s) )

Приклад 3: C, якщо … ще Сходи

 // Program to relate two integers using =,> or < symbol #include int main() ( int number1, number2; printf("Enter two integers: "); scanf("%d %d", &number1, &number2); //checks if the two integers are equal. if(number1 == number2) ( printf("Result: %d = %d",number1,number2); ) //checks if number1 is greater than number2. else if (number1> number2) ( printf("Result: %d> %d", number1, number2); ) //checks if both test expressions are false else ( printf("Result: %d < %d",number1, number2); ) return 0; )

Вихідні дані

 Введіть два цілих числа: 12 23 Результат: 12 <23

Вкладено, якщо … ще

Можна включити if… elseтвердження всередину іншого if… elseтвердження.

Приклад 4: Вкладений, якщо … ще

Ця програма, наведена нижче, стосується двох цілих чисел, що використовують будь-яку <, >і =подібно до if… elseприкладу драбини. Однак if… elseдля вирішення цієї проблеми ми будемо використовувати вкладений оператор.

 #include int main() ( int number1, number2; printf("Enter two integers: "); scanf("%d %d", &number1, &number2); if (number1>= number2) ( if (number1 == number2) ( printf("Result: %d = %d",number1,number2); ) else ( printf("Result: %d> %d", number1, number2); ) ) else ( printf("Result: %d < %d",number1, number2); ) return 0; )

Якщо тіло if… elseвиписки має лише одне висловлення, вам не потрібно використовувати дужки ().

Наприклад, цей код

 if (a> b) ( print("Hello"); ) print("Hi");

еквівалентно

 if (a> b) print("Hello"); print("Hi"); 

Цікаві статті...