Шаг 28.
Циклические конструкции. Цикл do...while

    На этом шаге мы рассмотрим синтаксис и применение оператора do...while.

    Цикл do...while также относится к циклам с неизвестным числом повторений. Его общий вид:

     do
       <тело цикла>;
     while (<условие или выражение>);

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

    Проиллюстрируем использование цикла do...while на конкретном примере: в следующей программе значение заданной строки (указатель star) переписывается в другую, заранее подготовленную строку (массив nov).

#include <iostream.h>
void main()
{
	char *str,*s,nov[80];
	int i=0,k;
	str = s = new char [80]; //Выделение памяти из кучи.
	cout << "\nЗадайте строку: ";
	cin >> str;
	cout << '\n';
	do
             nov[i]=*str++;   //Переписывание строки,
	while (nov[i++]);   //пока не встретится нулевой символ.
	cout << "\nНовая строка: ";
	cout << nov;
	cout << '\n';
	delete [ ] s; //Возврат памяти в кучу.
}
Текст этой программы можно взять здесь.

    Следующий шаг будет посвящен изучению цикла for.


Предыдущий шаг Содержание Следующий шаг