Цикли в C: For, While, Do While looping Приклади заяв
⚡ Розумний підсумок
Цикли в C повторюють блок операторів, доки умова керування не стане хибною, і мова надає три конструкції — цикл while, цикл do-while та цикл for — для повторення з контрольованим входом та виходом.

Що таке цикл у C?
вбиральняping Оператори в мові C виконують послідовність операторів багато разів, доки задана умова не стане хибною. Цикл у мові C складається з двох частин: тіла циклу та керуючого оператора. Керуючий оператор — це комбінація деяких умов, які наказують тілу циклу виконуватися, доки задана умова не стане хибною. Мета циклу в мові C — повторювати той самий код кілька разів.
Типи циклів у C
Залежно від позиції керуючого оператора в програмі, looping Оператори в C поділяються на два типи:
- Контрольований вхідний контур
- Вихід з контрольованого циклу
У циклі керування входом на C умова перевіряється перед виконанням тіла циклу. Це також називається циклом попередньої перевірки.
У циклі з контрольованим виходом умова перевіряється після виконання тіла циклу. Його також називають циклом після перевірки.
Зразок циклу
Умови керування мають бути чітко визначені та специфіковані, інакше цикл виконуватиметься нескінченну кількість разів. Цикл, який не зупиняє виконання та обробляє оператори певну кількість разів, називається нескінченним циклом. Нескінченний цикл також називається «нескінченним циклом». Нижче наведено деякі характеристики нескінченного циклу:
- Умова припинення не вказана.
- Зазначені умови ніколи не виконуються.
Зазначена умова визначає, чи виконувати тіло циклу чи ні.
Мова програмування C надає нам три типи конструкцій циклу:
- Цикл while
- Цикл do-while
- Цикл for
| Sr. Ні. | Тип петлі | Опис |
|---|---|---|
| 1. | Поки петля | У циклі while умова оцінюється перед обробкою тіла циклу. Якщо умова виконується, тоді і тільки тоді виконується тіло циклу. |
| 2. | Цикл Do-While | У циклі do…while умова завжди виконується після тіла циклу. Його також називають циклом, керованим виходом. |
| 3. | Для петлі | У циклі for початкове значення виконується лише один раз, потім умова перевіряє та порівнює лічильник з фіксованим значенням після кожної ітерації, зупинка.ping цикл for, коли повертається значення false. |
Поки цикл у C
Цикл while — це найпростіший туалетping структура. Синтаксис циклу While у мові програмування C виглядає наступним чином:
Синтаксис циклу While в C
while (condition) {
statements;
}
Це петля з контрольованим входом. У циклі while умова оцінюється перед обробкою тіла циклу. Якщо умова виконується, тоді і тільки тоді виконується тіло циклу. Після того, як тіло циклу виконано, керування знову повертається до початку, і умова перевіряється, чи вона істинна, той самий процес виконується, доки умова не стане хибною. Як тільки умова стає хибною, керування виходить із циклу.
Після виходу з циклу керування переходить до операторів, які знаходяться відразу після циклу. Тіло циклу може містити більше одного оператора. Якщо він містить лише один оператор, то фігурні дужки не є обов’язковими. Це хороша практика, хоча використовувати фігурні дужки, навіть якщо в тілі є один оператор.
У циклі while, якщо умова не виконується, тіло циклу не буде виконано навіть один раз. Він відрізняється від циклу do while, який ми незабаром побачимо.
Наступна програма ілюструє приклад циклу while у програмуванні на C:
#include<stdio.h> #include<conio.h> int main() { int num=1; //initializing the variable while(num<=10) //while loop with condition { printf("%d\n",num); num++; //incrementing operation } return 0; }
вихід:
1 2 3 4 5 6 7 8 9 10
Наведена вище програма ілюструє використання циклу while. У наведеній вище програмі ми надрукували ряд чисел від 1 до 10 за допомогою циклу while.
Цикл While в програмуванні на C
- Ми ініціалізували змінна називається num зі значенням 1. Ми будемо друкувати від 1 до 10, отже, змінна ініціалізується значенням 1. Якщо ви хочете друкувати з 0, тоді призначте значення 0 під час ініціалізації.
- У циклі while ми передбачили умову (num<=10), яка означає, що цикл виконуватиме тіло, доки значення num не стане 10. Після цього цикл буде припинено, а керування вийде за межі циклу.
- У тілі циклу ми маємо функцію print для друку нашого числа та операцію збільшення для збільшення значення за виконання циклу. Початкове значення num дорівнює 1, після виконання воно стане 2, а під час наступного виконання воно стане 3. Цей процес триватиме, доки значення не стане 10, а потім він роздрукує серію на консолі та завершить цикл. .
'\n' використовується для форматування, що означає, що значення буде надруковано на новому рядку.
Цикл Do-While у C
Цикл do…while у C подібний до циклу while, за винятком того, що умова завжди виконується після тіла циклу. Його також називають циклом, керованим виходом.
Синтаксис циклу do while у мові програмування C такий:
Синтаксис циклу Do-While у C
do { statements } while (expression);
Як ми бачили в циклі while, тіло виконується тоді і тільки тоді, коли умова виконується. У деяких випадках ми повинні виконати тіло циклу принаймні один раз, навіть якщо умова хибна. Цей тип операції можна виконати за допомогою циклу do-while.
У циклі do-while тіло циклу завжди виконується принаймні один раз. Після того, як тіло виконано, воно перевіряє стан. Якщо умова істинна, тоді воно знову виконає тіло циклу, інакше керування передається з циклу.
Подібно до циклу while, як тільки елемент керування виходить із циклу, оператори, які виконуються одразу після циклу.
Критична відмінність між циклами while і do-while полягає в тому, що в циклі while текст while записується на початку. У циклі do-while умова while записується в кінці та закінчується крапкою з комою (;)
Наступна програма циклу на С ілюструє роботу циклу do-while:
Нижче наведено приклад циклу do-while у C для друку таблиці номер 2:
#include<stdio.h> #include<conio.h> int main() { int num=1; //initializing the variable do //do-while loop { printf("%d\n",2*num); num++; //incrementing operation }while(num<=10); return 0; }
вихід:
2 4 6 8 10 12 14 16 18 20
У наведеному вище прикладі ми надрукували таблицю множення 2 за допомогою циклу do-while. Давайте подивимося, як програмі вдалося надрукувати серію.
Цикл Do-While у програмуванні на C
- Спочатку ми ініціалізували змінну 'num' значенням 1. Потім ми написали цикл do-while.
- У циклі ми маємо функцію друку, яка друкуватиме ряд, множачи значення num на 2.
- Після кожного збільшення значення num буде збільшуватися на 1 і друкуватися на екрані.
- Спочатку значення num дорівнює 1. У тілі циклу функція друку буде виконана таким чином: 2*num, де num=1, потім 2*1=2, отже, буде надруковано значення два. Це триватиме до тих пір, поки значення num не стане 10. Після цього цикл буде припинено, і оператор, який знаходиться відразу після циклу, буде виконано. У цьому випадку поверніть 0.
Цикл for в C
Цикл for є більш ефективною структурою циклу в програмуванні «C». Загальна структура синтаксису циклу for у C така:
Синтаксис циклу For у C
for (initial value; condition; incrementation or decrementation ) { statements; }
- Початкове значення циклу for виконується лише один раз.
- Умова — це булевий вираз, який перевіряє та порівнює лічильник з фіксованим значенням після кожної ітерації, зупинкаping цикл for, коли повертається значення false.
- Збільшення/зменшення збільшує (або зменшує) лічильник на встановлене значення.
Наступна програма ілюструє цикл for у прикладі програмування на C:
#include<stdio.h> int main() { int number; for(number=1;number<=10;number++) //for loop to print 1-10 numbers { printf("%d\n",number); //to print the number } return 0; }
вихід:
1 2 3 4 5 6 7 8 9 10
Наведена вище програма друкує ряди чисел від 1 до 10 за допомогою циклу for.
Цикл For у програмуванні C
- Ми оголосили змінну цілочисельного типу для зберігання значень.
- У циклі for, у частині ініціалізації, ми присвоїли значення 1 змінній number. У частині умови ми вказали нашу умову, а потім частину збільшення.
- У тілі циклу ми маємо функцію друку для друку чисел у новому рядку в консолі. У нас є значення одиниці, яке зберігається в номері, після першої ітерації значення буде збільшено, і воно стане 2. Тепер змінна number має значення 2. Умову буде перевірено повторно, і, оскільки умова є істинною, буде виконано цикл, і він надрукує два на екрані. Цей цикл буде виконуватися, доки значення змінної не стане 10. Після цього цикл буде припинено, і на екрані буде надруковано ряд 1-10.
У C цикл for може мати кілька виразів, розділених комами в кожній частині.
Наприклад:
for (x = 0, y = num; x < y; i++, y--) { statements; }
Крім того, ми можемо пропустити вираз початкового значення, умову та/або приріст, додавши крапку з комою.
Наприклад:
int i=0; int max = 10; for (; i < max; i++) { printf("%d\n", i); }
Зауважте, що цикли також можуть бути вкладеними там, де є зовнішній і внутрішній цикли. Для кожної ітерації зовнішнього циклу внутрішній цикл повторює весь цикл.
Розглянемо наступний приклад із кількома умовами в циклі for, який використовує вкладений цикл for у програмуванні на C для виведення таблиці множення:
#include <stdio.h> int main() { int i, j; int table = 2; int max = 5; for (i = 1; i <= table; i++) { // outer loop for (j = 0; j <= max; j++) { // inner loop printf("%d x %d = %d\n", i, j, i*j); } printf("\n"); /* blank line between tables */ }}
вихід:
1 x 0 = 0 1 x 1 = 1 1 x 2 = 2 1 x 3 = 3 1 x 4 = 4 1 x 5 = 5 2 x 0 = 0 2 x 1 = 2 2 x 2 = 4 2 x 3 = 6 2 x 4 = 8 2 x 5 = 10
Вкладеність циклів for може бути виконана до будь-якого рівня. Вкладені цикли повинні мати відповідний відступ, щоб зробити код читабельним. У деяких версіях мови «C» вкладеність обмежена 15 циклами, але деякі пропонують більше.
Вкладені цикли здебільшого використовуються в програмах масивів, які ми побачимо в наступних уроках.
Окрім трьох типів циклів, C пропонує два оператори, які змінюють спосіб виконання циклу зсередини.
Інструкція Break у C
Оператор break використовується в основному в заява перемикачаЦе також корисно для негайної зупинкиping петля.
Ми розглядаємо наступну програму, яка вводить перерву для виходу з циклу while:
#include <stdio.h> int main() { int num = 5; while (num > 0) { if (num == 3) break; printf("%d\n", num); num--; }}
вихід:
5 4
Продовжити твердження в C
Якщо ви хочете перейти до наступної ітерації, але залишитися в циклі, вам слід використовувати оператор continue.
Наприклад:
#include <stdio.h> int main() { int nb = 7; while (nb > 0) { nb--; if (nb == 5) continue; printf("%d\n", nb); }}
вихід:
6 4 3 2 1
Отже, значення 5 пропускається.
Яку петлю вибрати?
Вибір циклу завжди є складним завданням для програміста, щоб вибрати цикл, виконайте наступні кроки:
- Проаналізуйте проблему та перевірте, чи потрібен для неї попередній або післятестовий цикл.
- Якщо потрібне попереднє тестування, використовуйте цикл while або for.
- Якщо потрібен посттест, використовуйте цикл do-while.




