Найти Программирование на C и C++ Онлайн справочник программиста на C и C++ Главная Главная Язык С » Язык С Язык С++ » Функции Термины Операторы управления программой Разделы » Блоги Циклы DO/WHILE Обзор языка С Переменные, константы, операторы и выражения Операторы управления программой Истина и ложь в С Операторы выбора IF Вложенные if Лесенка if-else-if Оператор ? SWITCH Циклы В противоположность циклам for и while, сначала проверяющим условие, цикл do/while проверяет условие в конце. То есть, цикл do/while всегда выполняется, по крайней мере, один раз. Стандартный вид цикла do/while следующий: do { последовательность операторов; } while (условие); Хотя в фигурных скобках нет необходимости при наличии одного оператора, они обычно используются для улучшения читабельности и устранения недоразумений (у читателя, а не у компилятора) по поводу цикла while. FOR WHILE DO/WHILE BREAK EXIT() CONTINUE Метки и GOTO Функции Массивы Указатели Структуры, объединения и определяемые пользователем типы Ввод, вывод, потоки и файлы Препроцессор и комментарии Данный цикл do/while осуществляет чтение чисел с клавиатуры до тех пор, пока одно из них не станет меньше либо равно 100: do { scanf ("%d", &num); } while (num > 100); Возможно, наиболее типичным использованием цикла do/while является процедура выбора пунктов меню. Когда набран корректный ответ, она возвращает значение функции. Неправильный ответ приводит к повторному вводу. Следующий пример являет собой улучшенную версию меню программы проверки орфографии: void menu(void) { char ch; printf("1. Check Spellirig\n"); printf("2. Correct Spelling Errors\n"); printf("3. Display Spelling Errors\n"); printf(" Enter your choice: "); do { ch = getche(); /* чтение клавиатуры */ switch(ch) { case '1' : check_spelling (); break; case '2' : correct_errors (); break; case '3' : display_errors(); break; } } while(ch!='1' && ch!='2' && ch!='3'); } В случае функции меню необходимо выполнить ее, по крайней мере, один раз. После отображения опций программа зацикливается до тех пор, пока не будет осуществлен корректный выбор. ‹ WHILE Вверх Главная Язык С Язык С++ BREAK › Функции Термины Блоги