![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
Оператор циклу while визначає ті операції, які циклічно виконуються до тих пір, поки вираз, що перевіряється не стане false або рівним 0. Оператор while – це цикл з передумовою; рішення, чи виконувати в черговий раз тіло циклу, приймається перед початком його проходження.
Оператор, що утворює тіло циклу, може бути або простим або складеним.
Синтаксис простого оператора:
while (вираз) /*простий оператор*/
<oператор>
Приклад:
while (i < 0)
printf (“Значення змінної і від’ємне”);
Оператор виконується в тому випадку, коли i < 0. Якщо значення і буде більшим чи рівним 0 ((i > 0) чи (і >= 0)), то тіло оператора while взагалі не буде виконуватись і управління зразу перейде на наступний за тілом циклу оператор програми.
Синтаксис складеного оператора:
while (вираз) /*складений оператор*/
{
<oператор1>
<oператор2>
}
Приклад:
while (i < 10)
{
i = 0;
i++;
printf (“Значення змінної і = %d”, i);
}
1.5. Оператор покрокового циклу for.
В операторі for використовуються три вирази, що керують роботою циклу; вони розділені символами “; ”.
Синтаксис:
for ([< ініціалізація>]; [<умовний вираз>]; [<корекція>])
<oператор>
Тіло оператора циклу for виконується до тих пір, поки <умовний вираз> не стане false або рівним 0. Якщо він із самого початку false, то тіло циклу не буде виконано жодного разу. < Ініціалізація> і <корекція> використовуються для ініціалізації і модифікації параметрів циклу чи інших значень.
Ініціалізуючий вираз (якщо він є) обчислюється тільки один раз до початку виконання якого-небудь із операторів циклу. Потім обчислюється умовний вираз і проводиться його оцінка наступним чином:
1)Якщо вираз що перевіряється true (не рівний нулю), то тіло циклу виконується один раз. Потім обчислюється величина виразу що коректується, і значення виразу що перевіряється визначається знову.
2)Якщо <умовний вираз> пропущений, то його значення приймається за істину і процес виконання продовжується. В цьому випадку оператор циклу for представляє собою безкінечний цикл, який може завершитись тільки при виконанні в його тілі операторів break, goto, return.
3)Якщо умовний вираз не істинний, то виконання оператора for завершується і управління передається наступному за ним оператору в програмі.
Оператор for – це цикл з передумовою: рішення, виконати в черговий раз тіло циклу чи ні, приймається до початку його проходження. Тому може бути так, що тіло циклу не буде виконано ні разу.
Оператор, що утворює тіло циклу, може бути як простим (приклад 1), так і складеним (приклад2)
Приклад1:
for (n = 0; n < 10; n++)
printf (“%d”, n);
Приклад2:
for (n = 0; n < 10; n++)
{
k = 5 * b;
printf (“%d”, k);
}
В даних прикладах тіло циклу виконується до тих пір, поки умова що перевіряється (n < 10), не стане false чи рівна нулю.
Операція “, ” пов’язує два вирази в один і гарантує, що самий лівий вираз буде обчислюватись першим.
Приклад:
for (а = 1, в = 0; в < 10; a * = 2)
b + = a;
1.6. Оператор циклу з післяумовою do while.
Оператор do while визначає дії, які циклічно виконуються до тих пір, поки вираз не стане false, чи рівним 0. Оператор do while – цикл з післяумовою; рішення, виконувати чи не виконувати в черговий раз тіло циклу, приймається після його проходження. Тому тіло циклу буде виконуватись по крайній мірі один раз. Оператор, що утворює тіло циклу, може бути як простим, так і складеним.
Форма запису:
Do
<оператор>
while ( вираз )
Виконання оператора повторюється до тих пір, поки вираз не стане false, чи рівним 0.
Наприклад:
Do
scanf (“%d”, &number);
while ( number! = 20 )
1.7. Оператори switch і break.
Загальна структура оператора switch:
switch (цілий вираз)
{
case константа1:
<оператори> (необов’язкові)
case константа2:
<оператори> (необов’язкові)
....
default:
<оператори> (необов’язкові)
}
Управління в програмі передається оператору, у якого в якості міток використовується значення деякого виразу. Потім в процесі проходження програми будуть виконуватись оператори, що залишились, поки не відбудеться новий перехід. Як вирази, так і мітки повинні мати значення цілого типу (включаючи тип char); мітки повинні бути константами чи константними виразами. Якщо деякому значенню виразу не відповідає ніяка мітка, управління передається оператору з міткою default (якщо такий є в програмі). В протилежному випадку управління передається оператору, що знаходиться за оператором switch (приклад).
Приклад:
switch (number)
{
case 1: printf (“Номер 1-ший”); break;
case 2: printf (“Номер 2-гий”); break;
....
default: printf (“Інші номера…”); break;
}
Цей приклад слугує ілюстрацією роботи оператора switch. Спочатку обчислюється вираз в дужках, розташованого за ключовим словом switch. В даному випадку значенням цього виразу буде символ, присвоєний змінній number, який ми ввели перед цим. Далі програма переглядає список “міток” (в цьому прикладі case 1;, case 2: і т.д.) доки не знайде “мітку”, яка відповідає даному значенню, і виконує оператор розташований після “мітки”. Наступний етап – програма переходить до виконання оператора, що розташований в цій стрічці. Якщо такої “мітки” не знаходиться і якщо існує стрічка з “міткою” case default:, то буде виконуватись оператор, що позначений цією “міткою”. В іншому випадку відбудеться перехід до оператора, розташованому за оператором switch.
Виконання оператора break приводить до того, що в програмі відбувається вихід із оператора switch і здійснюється перехід до наступного оператора, що знаходиться за даним.
При відсутності оператора break будуть виконані всі оператори, починаючи з поміченого даною “міткою” і закінчуючи оператором switch.
1.8. Ключові слова: break, continue, goto.
Ці три команди викликають перехід від одного оператора програми до іншого, розташованого в іншому місці (в тілі програми).
Break
Оператор break можна використовувати з любою із трьох форм циклу і з оператором switch. Вона приводить до того, що управління програмою “ігнорує” залишок циклу чи оператор switch, що містить цей залишок, і поновлює виконання програми з оператора, що знаходиться за циклом чи оператором switch (див. попередній приклад). Якщо оператор break знаходиться в середині деякої сукупності вкладених структур, його дія розповсюджується тільки на саму внутрішню структуру, в якій він безпосередньо знаходиться.
Дата публикования: 2015-01-13; Прочитано: 1376 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!