Главная > Язык Си > Операторы цикла в языке си
В языке Си реализованы три вида операторов цикла:
§ while - цикл с предусловием;
§ do...while - цикл с постусловием;
§ for - параметрический цикл (цикл с заданным числом повторений).
Цикл с предусловием while
Общая форма записи
while(выражение) {
блок операций;
}
Если выражение истинно (не равно нулю), то выполняется блок операций, заключенный в фигурные скобки, затем выражение проверяется снова. Последовательность действий, состоящая из проверки и выполнения блока операций, повторяется до тех пор, пока выражение не станет ложным (равным нулю). При этом происходит выход из цикла, и производится выполнение операции, стоящей после оператора цикла.
Пример
int k=5;
int i=1;
int sum=0;
while(i <=k) {
sum = sum + i;
i++;
}
При построении цикла while, в него необходимо включить конструкции, изменяющие величину проверяемого выражения так, чтобы в конце концов оно стало ложным (равным нулю). Иначе выполнение цикла будет осуществляться бесконечно (бесконечный цикл), например
while(1) {
блок операций;
}
while — цикл с предусловием, поэтому вполне возможно, что тело цикла не будет выполнено ни разу если в момент первой проверки проверяемое условие окажется ложным.
Пример
int k=5;
int n=10;
while(k>n) {
printf(" k=%d n=%d \n", k, n);
k = k + 2;
}