Операторы организации циклов.
Циклы позволяют выполнить любой набор инструкций до тех пор, пока не выполнится некоторое условие.
Оператор for
Формат:
For (инициализация; условие; изменение) тела цикла;
а) инициализация – это установка начального значения переменной цикла;
б) условие – для проверки выполнения условия продолжения цикла;
в) изменение – для изменения управляющей переменной на каждой итерации (шаге);
Цикл for работает до тех пор, пока условие истинно, любая из 3-х частей в цикле for может отсутствовать, но необходимо тогда наличие оператора, разрывающего цикл;
Пример №1.
for ( ; ; ) { }; - бесконечный цикл
Пример №2.
Осуществить вывод чисел от 1 до 10 включительно.
# include < stdio.h >
main ( )
{ int x;
for (x=1; x < = 10, x++) print f (" % d ", x);
}
В данном примере x является переменной цикла, если в теле цикла более одной инструкции, то они заключаются в фигурные скобки, в теле цикла могут встречаться другие операторы for.
Оператор while
Формат оператора:
while (условие) {тело цикла};
Условие может быть любое выражение имеющее ненулевое (истинное или нулевое ложное значение). Цикл выполняется, пока условие истинно, когда условие становится ложным, выполняется строка следующая за циклом.
Пример:
# include < stdio.h >
{ int i = 1;
while ((getchar ( )) ! = 'A' ) i++;
printf (“символ A % d-и”, i);
}
Оператор цикла do-while.
В отличие от цикла for и while, цикл do-while проверяет условие в конце, т.е. тело в цикле всегда выполняется, по крайней мере, один раз.
Формат оператора
do {тело цикла} while (условие)
Тело цикла выполняется до тех пор, пока условие не примет ложное значение. Если оно ложно при входе в цикл, то его тело выполняется один раз.
Пример:
# include < stdio.h >
main ( )
{ int i = 0;
do i++; while (( getchar ( ))! = ‘A’);
printf ("символ A % d-й," i );
}
Примечание: 1) Возможной ошибкой при программировании цикла любого типа является запись такого условия, которое никогда не прекратит выполнение цикла.
while (a); print f ("Бесконечный цикл");
Данная программа будет бесконечна, выводить на экран дисплея беск. цикл в случае, если а = 0.
2) Тело любого цикла может быть пустым, это можно использовать для улучшения эффективности некоторых алгоритмов, а также для создания задержках.
Пример:
for (a = 0, a < ZNAK; a++ );
3) Допускается вложенность одних циклов в другие.
4) В теле цикла могут использоваться операторы break; exit ( );continue.
Оператор break обеспечивает принудительное окончание цикла, минуя условия. Функция exit находящаяся в стандартной библиотеке вызывает немедленное окончание работы программы и форсирует возврат в операционную систему. Оператор continue вызывает прекращение очередной и начало следующей операции.
Дата добавления: 2016-04-14; просмотров: 1302;