Інформатика
Оператори вибору : Оператор switch
 

Оператор switch

     Оператор вибору, або оператор - перемикач, використовують для вибору одного з багатьох варіантів вирішування і має наступну форму запису:

switch (<вираз цілого типу>)
{

case <значення_1>:
<послідовність_операторів_1>; [break;]
case <значення_2>:
<послідовність_операторів_2>; [break;]
..............................................................
case <значення_n>:
<послідовність_операторів_n>; [break;]
[default: <послідовність_операторів_n+1>;]
}
     Оператор-перемикач switch призначений для вибору одного з декількох альтернативних шляхів виконання програми. Виконання оператора switch починається з обчислення значення виразу (виразу, що слідує за ключовим словом switch у круглих дужках). Після цього управління передається одному з <операторів>. Оператор, що отримав управління - це той оператор, значення константи варіанту якого співпадає зі значенням виразу перемикача.
     Гілка default (може опускатися, про що свідчить наявність квадратних дужок) означає, що якщо жодна з вищенаведених умов не задовольнятиметься (тобто вираз цілого типу не дорівнює жодному із значень, що позначені у саse-фрагментах), керування передається за замовчуванням в це місце програми. Треба також зазначити необов'язкове застосування оператора break у кожному з case-фрагментів (цей оператор застосовують для негайного припинення виконання операторів while, do, for, switch). Використання оператора break негайно передасть керування у точку програми, що слідує відразу за останнім оператором у switch-блоці.
Приклад 4. Застосування оператора switch.

     int i=2;

     switch (i)

     {

          case 1: i += 2;

          case 2: i *= 3;

          case 0: i /= 2;

          case 4: i -= 5;

          default: ;

     }

     Виконання оператора switch починаеться з оператора, позначеного case 2. Таким чином, змінна i отримує значення 6, далі виконується оператор, позначений ключевим словом case 0, а далі case 4, змінна i прийме значення 3, а потім значення - 2. Оператор, позначений ключевим словом default, не змінює значення змінної.

     В операторі switch можна використовувати вкладені оператори switch, при цьому в ключових словах case можна використовувати однакові константні вирази.

Приклад 5. Вкладений оператор switch.

     switch (a)

      {

          case 1: b=c; break;

          case 2:

          switch (d)

          {

               case 0: f=s; break;

               case 1: f=9; break;

               case 2: f-=9; break;

          }

          case 3: b-=c; break;

     }

 
© 2008 ХНУРЭ, Інформатики, Сінельнікова Т.Ф., informatika@kture.Kharkov.ua
Розроблено за допомогою LERSUS