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
, надрукуйте текст:
Ми також можемо перевірити змінні:
Пояснення прикладу
У наведеному вище прикладі ми використовуємо дві змінні, 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.");
}
Спробуйте самі »