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

En Es De

C Switch


Інструкція Switch

Замість того, щоб писати багато інструкцій if..else, ви можете скористатися інструкцією switch.

Інструкція switch вибирає один із багатьох блоків коду для виконання:

Синтаксис

switch(expression) {
  case x:
    // блок коду
    break;
  case y:
    // code block
    break;
  default:
    // блок коду
}

Ось як це працює:

  • Вираз switch обчислюється один раз
  • Значення виразу порівнюється зі значеннями кожного case
  • Якщо є збіг, виконується відповідний блок коду
  • Інструкція break виривається з блоку switch і зупиняє виконання
  • Інструкція default є необов’язковою та вказує певний код для запуску, якщо немає відповідності регістру

У наведеному нижче прикладі для обчислення назви дня тижня використовується номер дня тижня:

Приклад

int day = 4;

switch (day) {
  case 1:
    printf("Monday");
    break;
  case 2:
    printf("Tuesday");
    break;
  case 3:
    printf("Wednesday");
    break;
  case 4:
    printf("Thursday");
    break;
  case 5:
    printf("Friday");
    break;
  case 6:
    printf("Saturday");
    break;
  case 7:
    printf("Sunday");
    break;
}

// Outputs "Thursday" (day 4)
Спробуйте самі »

Ключове слово break

Коли C досягає ключового слова break, він виривається з блоку switch.

Це призупинить виконання додаткового коду та тестування регістру всередині блоку.

Коли знайдено відповідність і роботу виконано, настав час перерви. Більше тестування не потрібно.

Перерва (break) може заощадити багато часу на виконання, оскільки воно "ігнорує" виконання всього решти коду в блоці switch.


Ключове слово default

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

Приклад

int day = 4;

switch (day) {
  case 6:
    printf("Today is Saturday");
    break;
  case 7:
    printf("Today is Sunday");
    break;
  default:
    printf("Looking forward to the Weekend");
}

// Outputs "Looking forward to the Weekend"
Спробуйте самі »

Примітка. Ключове слово default слід використовувати як останню інструкцію в switch, і воно не потребує break.


C Вправи

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

Вправа:

Вставте відсутні частини, щоб завершити наступну інструкцію switch:

int day = 2;
switch () {
 1:
printf("Monday");
;
 2:
printf("Sunday");
;
}