может быть заменен оператором while следующим образом:

Выражение1;

"whilе ("Выражение2')'

'{'    Тело

Выражение3;

'}'  

Так же, как и при выполнении оператора цикла for, в операторе while вначале происходит проверка Выражения2. Поэтому оператор while удобно использовать в ситуациях, когда тело не всегда нужно выполнять.

Внутри операторов for и while можно использовать локальные переменные, которые должны быть объявлены с определением соответствующих типов.

Оператор цикла do-while

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

"do» Тело «while» '('Выражение");"

Схема выполнения оператора do-whiie:

1) выполняется тело цикла (которое может быть составным оператором);

2) вычисляется Выражение;

3) если Выражение ложно, то выполнение оператора do-whiie заканчивается и выполняется следующий по порядку оператор. Если Выражение истинно, то выполняется переход к пункту 1.

Чтобы прервать выполнение цикла до того, как условие станет ложным, можно использовать оператор break.

Операторы while и do-while могут быть вложенными.

Пример использования вложенных циклов:

int i,j,k;

...

i=0; j=0; k=0;

do {i++;

      j--;

      while(a[k]

}while(i<30&&j<-30); 

Следует отметить, что приведенный пример использования оператора do-whiie не является образцом для подражания, т. к. использование операции && заставляет компилятор создавать достаточно сложную программу выполнения логического выражения. Использование для той же цели оператора break приводит к более длинному исходному тексту программы. При этом код программы получается более коротким и быстродействующим, т. к. в этом случае один оператор языка программирования С соответствует одной машинной команде микроконтроллера:

char i=0, j=0, k=0;

...

do{i++; j--;

     while(a[k]

     if(j>=-30)break;

}while(i<30); 

Оператор continue

Оператор continue используется только внутри операторов цикла, но в отличие от break, осуществляется не выход из цикла, а переход к следующему циклу. Формат записи оператора continue:

"continue;"

Пример использования оператора continue:

int main()

{int a,b;

 for (a=1,b=0; a<100; b+=a,a++)

   {if (b%2) continue;

    ... /* обработка четных сумм */

   }

 return 0;

Когда сумма чисел от 1 до а становится нечетной, оператор continue передает управление на очередную итерацию цикла for, не выполняя операторы обработки четных сумм.

Оператор continue, как и оператор break, прерывает самый внутренний из объемлющих его циклов.

Оператор возврата из функции return

Оператор return завершает выполнение функции, в которой он задан, и возвращает управление в вызывающую функцию, в точку, непосредственно следующую за вызовом данной функции. Формат оператора возврата из функции:

"return" [Выражение]';'

Значение выражения, если оно задано, возвращается в вызывающую функцию в качестве значения вызванной функции. Если выражение опущено, то возвращаемое значение не определено. Это используется в функция типа void. Выражение может быть заключено в круглые скобки, хотя их наличие не обязательно.

Если в какой-либо функции отсутствует оператор return, то передача управления в точку вызова происходит после выполнения последнего оператора вызываемой функции. При этом возвращаемое значение не определено. Если функция не должна возвращать значения (подпрограмма-процедура), то ее нужно объявлять с типом void.

Таким образом, оператор return используется либо для немедленного выхода из функции, либо для передачи в основную программу возвращаемого из функции значения.

Пример использования оператора return для возвращения результата работы функции суммирования двух переменных:

int sum (int a, int b)

{return (a+b);}

Функция sum объявлена с двумя формальными параметрами, а и b, int-типа и возвращает значение такого же типа, о чем говорит описатель, стоящий перед именем функции. Возвращаемое оператором return значение равно сумме фактических параметров.

Пример использования оператора return для выхода из подпрограммы-процедуры:

В этом примере оператор return используется для выхода из функции в случае выполнения одного из проверяемых условий.

Оператор безусловного перехода goto
Перейти на страницу:

Поиск

Похожие книги