Организация циклов с помощью оператора do - while
В общем виде этот
оператор можно записать следующим образом:
do
оператор;
while( выражение
);
Выполняется
"оператор", а затем вычисляется
"выражение2". Если оно истинно, то снова
выполняется "оператор" и.т.д. Если
"выражение" становится ложным, циклический
процесс заканчивается. Это так называемый цикл с
постусловием: условие завершения цикла
проверяется не в его начале. как это имеет место в
операторах while и for, а в конце,
уже после прохода по телу цика. Как следствие,
тело цикла обязательно выполняется по крацней
мере один раз. Этот тип цикла встречается
нечасто, но иногда бывает полезен. Составим ,
например, функцию length(s), которая
вычисляет длину строки s с учетом
завершающегося нуля. Известно, что число
символов в строке не меньше единицы, если
учитывать этот нулеврй символ. Поэтому
естественно предположить, что мы бедм проходить
по телу цикла по крайней мере один раз. Значит,
можно использовать цикл do - while(пример 4.8).
Пример 4.8
/*длина строки*/
length(s)
char s[]
{
int i,l;
i=l=0;
do
i++;
while(s[l++]!='\0');
return(i);
}
#include stdio.h
main()
{
printf("%d\n",length(""));
printf("%d\n",length("мама"));
}
|
< Дальше >
|