НАЙКРАЩИЙ САЙТ ДЛЯ ВЕБ-РОЗРОБНИКІВ
Мова програмування C. Уроки W3Schools для початківців українською мовою

En Es De

C If ... Else


Умови та інструкції If

Ви вже дізналися, що мова C підтримує звичайні логічні умови з математики:

  • Менше ніж: a < b
  • Менше ніж або дорівнює: a <= b
  • Більше ніж: a > b
  • Більше ніж або дорівнює: a >= b
  • Дорівнює a == b
  • Не дорівнює: a != b

Ви можете використовувати ці умови для виконання різних дій для різних рішень.

Мова C має наступні умовні інструкції:

  • Використовуйте if, щоб указати блок коду, який буде виконано, якщо задана умова є true
  • Використовуйте else, щоб указати блок коду для виконання, якщо така сама умова є false
  • Використовуйте else if, щоб указати нову умову для перевірки, якщо перша умова є false
  • Використовуйте switch, щоб указати багато альтернативних блоків коду для виконання

Інструкція if

Використовуйте інструкцію if, щоб указати блок коду, який буде виконано, якщо умова true.

Синтаксис

if (умова) {
  // блок коду, який буде виконано, якщо умова є true
}

Зауважте, що if написано малими літерами. Великі літери (If або IF) створюють помилку.

У наведеному нижче прикладі ми перевіряємо два значення, щоб дізнатися, чи 20 більше за 18. Якщо умова true, надрукуйте текст:

Приклад

if (20 > 18) {
  printf("20 більше ніж 18");
}
Спробуйте самі »

Ми також можемо перевірити змінні:

Приклад

int x = 20;
int y = 18;
if (x > y) {
  printf("x більше ніж y");
}
Спробуйте самі »

Пояснення прикладу

У наведеному вище прикладі ми використовуємо дві змінні, x та y, щоб перевірити, чи x більше за y (за допомогою оператора >). Оскільки x дорівнює 20, а y дорівнює 18, і ми знаємо, що 20 більше за 18, ми друкуємо на екрані, що "x більше за y".


Інструкція else

Використовуйте інструкцію else, щоб указати блок коду, який буде виконано, якщо умова є false.

Синтаксис

if (умова) {
  // блок коду, який буде виконано, якщо умова є true
} else {
  // блок коду, який буде виконано, якщо умова є false
}

Приклад

int time = 20;
if (time < 18) {
  printf("Добрий день.");
} else {
  printf("Добрий вечір.");
}
// Виведе "Добрий вечір."
Спробуйте самі »

Пояснення прикладу

У наведеному вище прикладі час (20) перевищує 18, тому умова false. Через це ми переходимо до умови else і друкуємо на екрані "Добрий вечір.". Якщо час був менше 18, програма друкувала б "Добрий день".


Інструкція else if

Використовуйте інструкцію else if щоб указати нову умову, якщо перша умова false.

Синтаксис

if (умова1) {
  // блок коду, який буде виконано, якщо умова1 є true
} else if (умова2) {
  // блок коду, який буде виконано, якщо умова1 є false, а умова2 є true
} else {
  // блок коду, який буде виконано, якщо умова1 є false, а умова2 є false
}

Приклад

int time = 22;
if (time < 10) {
  printf("Добрий ранок.");
} else if (time < 20) {
  printf("Добрий день.");
} else {
  printf("Добрий вечір.");
}
// Виведе "Добрий вечір."
Спробуйте самі »

Пояснення прикладу

У наведеному вище прикладі час (22) перевищує 10, тому перша умова є false. Наступна умова в інструкції else if також false, тому ми переходимо до умови else, оскільки обидві - умова1 та умова2 є false - і виводимо на екран "Добрий вечір".

Однак, якби час був 14, наша програма видала б "Добрий день".


Більше прикладів

У цьому прикладі показано, як можна використовувати if..else, щоб "open a door" ("відчинити двері"), якщо користувач вводить правильний код:

Приклад

int doorCode = 1337;

if (doorCode == 1337) {
  printf("Правильний код.\nДвері тепер відчинені.");
} else {
  printf("Невірний код.\nДвері залишаються закритими.");
}
Спробуйте самі »

Цей приклад показує, як ви можете використовувати if..else, щоб дізнатися, додатне (позитивне) чи від’ємне (негативне) число:

Приклад

int myNum = 10; // Це додатне чи від’ємне число?

if (myNum > 0) {
  printf("Значення є додатним числом.");
} else if (myNum < 0) {
  printf("Значення є від’ємним числом.");
} else {
  printf("Значення є 0.");
}
Спробуйте самі »

C Вправи

Перевірте себе за допомогою вправ

Вправа:

Надрукуйте "Hello World", якщо x є більше ніж y.

int x = 50;
int y = 10;
 (x  y) {
printf("Hello World");
}