Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
метод_вказ_лаб_роб_с.doc
Скачиваний:
14
Добавлен:
12.11.2019
Размер:
310.78 Кб
Скачать

2.2. Оператор 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), що негайно передасть керування у точку програми, що слідує відразу за останнім оператором у switch-блоці.

2.3. Оператор циклу з передумовою while

Оператор while використовується для організації циклічного виконання оператора або серії операторів, поки виконується певна умова.

Синтаксис :

while (<логічний вираз>)

оператор;

Цикл закінчується у наступних випадках :

1. умовний вираз у заголовку приймає нульове значення;

2. у тілі циклу досягнуто місця, де розташований оператор break;

3. у тілі циклу виконаний оператор return;

У перших двох випадках керування передається оператору, розташованому безпосередньо за циклом, у третьому випадку активна на той момент функція завершує свою роботу, повертаючи якесь значення.

Знову ж таки частою помилкою програмістів, що працювали раніше на Паскалі, є використання замість оператора порівняння (= =) оператора присвоювання (=).

2.4. Оператор циклу з постумовою do … while

Оператор do…while використовується для організації циклічного виконання оператора або серії операторів, які називаються тілом циклу, до тих пір, поки умова не стане хибною.

Синтаксис :

do

<оператор>;

while (<логічний_вираз>);

Ситуації, що призводять до виходу з циклу, аналогічні наведеним для циклу while із передумовою. Характерним є те, що тіло циклу виконається хоча б один раз. На відміну від Паскаля, в якому цикл з постумовою repeat operator until умова виконується, поки умова невірна, цикл do ... while навпаки припиняє виконання, коли умовний вираз обертається в нуль (стає невірним).

2.5. Оператор циклу for

Оператор for забезпечує циклічне повторення деякого оператора певне число разів. Оператор, який повторюється називається тілом циклу. Повторення циклу звичайно здійснюється з використанням деякої змінної (лічильника), яка змінюється при кожному виконанні тіла циклу. Повторення завершується, коли лічильник досягає заданого значення.

Синтаксис оператора:

for([ініціалізація];[перевірка_умови];[нове_значення])

оператор ;

Звернемо увагу на те, що кожен з трьох виразів може бути відсутнім. Перший вираз служить для ініціалізації лічильника, другий - для перевірки кінця циклу, а третій вираз - для зміни значення лічильника. Формально роботу циклу можна описати такими кроками:

1. якщо перший вираз (ініціалізація) присутній, то він обчислюється;

2. обчислюється вираз умови (якщо він присутній). Якщо умова виробляє значення 0, тобто вона невірна, цикл припиняється, у протилежному випадку він буде продовжений;

3. виконується тіло циклу;

4. якщо присутній вираз зміни лічильника, то він обчислюється;

5. надалі перехід до пункту під номером 2.