Циклы в C: операторы цикла For, While, Do While [Примеры]

Что такое цикл в C?

Циклические операторы в C выполнить последовательность операторов много раз, пока заявленное условие не станет ложным. Цикл в C состоит из двух частей: тела цикла и управляющего оператора. Оператор управления представляет собой комбинацию некоторых условий, которые предписывают выполнять тело цикла до тех пор, пока указанное условие не станет ложным. Целью цикла C является повторение одного и того же кода несколько раз.

Типы циклов в C

В зависимости от положения управляющего оператора в программе оператор цикла в C подразделяется на два типа:

1. Вход в контролируемый контур

2. Выход из управляемого контура.

В одном из цикл управления входом в C, условие проверяется перед выполнением тела цикла. Его также называют циклом предварительной проверки.

В одном из выход из контролируемого контура, условие проверяется после выполнения тела цикла. Его также называют циклом пост-проверки.

Типы циклов в C
Пример цикла

Условия управления должны быть четко определены и указаны, иначе цикл будет выполняться бесконечное количество раз. Цикл, который не прекращает выполнение и обрабатывает операторы несколько раз, называется циклом. бесконечная петля. Бесконечный цикл также называется «Бесконечная петля». Ниже приведены некоторые характеристики бесконечного цикла:

1. Условия завершения не указаны.

2. Указанные условия никогда не выполняются.

Указанное условие определяет, выполнять тело цикла или нет.

Язык программирования C предоставляет нам три типа конструкций циклов:

1. Цикл while

2. Цикл «делать-пока»

3. Цикл for

Sr. No. Тип петли Описание
1. Пока цикл В цикле while условие оценивается перед обработкой тела цикла. Если условие истинно, то и только тогда выполняется тело цикла.
2. Цикл Do-While В цикле do… while условие всегда выполняется после тела цикла. Его также называют контуром с контролируемым выходом.
3. Для петли В цикле for начальное значение выполняется только один раз, затем условие проверяется и сравнивает счетчик с фиксированным значением после каждой итерации, останавливая цикл for, когда возвращается false.

Пока цикл в C

Цикл 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.

Пока цикл в C
Цикл while в программировании на C
  1. Мы инициализировали переменную с именем num со значением 1. Мы собираемся печатать от 1 до 10, поэтому переменная инициализируется значением 1. Если вы хотите печатать со значения 0, присвойте значение 0 во время инициализации.
  2. В цикле while мы предоставили условие (num<=10), что означает, что цикл будет выполнять тело до тех пор, пока значение num не станет равным 10. После этого цикл завершится, и управление выйдет за пределы цикла.
  3. В теле цикла у нас есть функция печати для печати нашего числа и операция увеличения для увеличения значения при каждом выполнении цикла. Начальное значение 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 записывается в конце и завершается точкой с запятой (;).

Следующая программа цикла на языке C иллюстрирует работу цикла 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
Цикл Do-While в программировании на C
  1. Сначала мы инициализировали переменную «num» значением 1. Затем мы написали цикл do- while.
  2. В цикле у нас есть функция печати, которая печатает серию, умножая значение num на 2.
  3. После каждого приращения значение num будет увеличиваться на 1 и выводиться на экран.
  4. Первоначально значение num равно 1. В теле цикла функция печати будет выполняться следующим образом: 2*num, где num=1, затем 2*1=2, следовательно, будет напечатано значение два. Это будет продолжаться до тех пор, пока значение num не станет равным 10. После этого цикл будет завершен и будет выполнен оператор, который находится сразу после цикла. В этом случае верните 0.

Для цикла в C

Цикл for — это более эффективная структура цикла в программировании на языке C. Общая структура синтаксиса цикла for в C выглядит следующим образом:

Синтаксис цикла For в C

for (initial value; condition; incrementation or decrementation ) 
{
  statements;
}
  • Начальное значение цикла for выполняется только один раз.
  • Условие представляет собой логическое выражение, которое проверяет и сравнивает счетчик с фиксированным значением после каждой итерации, останавливая цикл 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.

Для цикла в C
Для цикла в программировании на C
  1. Мы объявили переменная типа данных int для хранения значений.
  2. В цикле for в части инициализации мы присвоили значение 1 номеру переменной. В части условия мы указали наше условие, а затем часть приращения.
  3. В теле цикла у нас есть функция печати для печати чисел в новой строке консоли. У нас есть значение единица, сохраненное в числе, после первой итерации значение будет увеличено и станет 2. Теперь переменная номер имеет значение 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 циклами, но в некоторых предусмотрено больше.

Вложенные циклы в основном используются в приложениях с массивами, которые мы увидим в дальнейших уроках.

Оператор Break в C

Оператор Break используется в основном в заявление о переключении. Это также полезно для немедленной остановки цикла.

Мы рассмотрим следующую программу, которая вводит прерывание для выхода из цикла 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.

Резюме

  • Определите цикл в C: Цикл — одно из ключевых понятий любого языка. Язык программирования. Циклы в языке C реализуются с помощью условных операторов.
  • Блок операторов управления циклом в C выполняется определенное количество раз, пока условие не станет ложным.
  • Циклы в программировании на языке C бывают двух типов: с контролем входа и с контролем выхода.
  • Перечислите различные инструкции управления циклом на языке C: Программирование на языке C дает нам 1) while 2) do- while и 3) инструкции управления циклом.
  • Программирование циклов C for и while — это циклы с управляемым входом на языке C.
  • Do- while — это цикл управления выходом в C.