Цикл do-while предпочтительнее использовать в ситуациях, когда некоторые действия необходимо выполнить, по крайней мере, один раз, а их повторение будет зависеть от условия. alexeyos.github.io
Некоторые примеры ситуаций, в которых удобно применять do-while:
- Пользовательский ввод и реакция на ошибку. qna.habr.com Цикл позволяет повторить ввод. qna.habr.com
- Работа с функциями ввода/вывода. qna.habr.com Например, если во время их работы в приложение пришёл сигнал, то функция может вернуть EINTR. qna.habr.com В таком случае удобно вызов функции заключать в do-while. qna.habr.com
- Получение данных из API. qna.habr.com Нужно сделать первоначальный запрос, а дальше в зависимости от ответа либо продолжать цикл, пока не будут получены все страницы, либо выходить из цикла, если данных нет или не более одной страницы. qna.habr.com
- Работа с объектами, когда уже есть допустимый объект на момент запуска первой итерации, и не хочется ничего выполнять (включая оценку условий цикла) до начала первой итерации. stackoverflow.com