تا به این جا با چند نمونه از ساختار های حلقه در زبان ++C آشنا شدیم اکنون یکی دیگر از این نوع ساختار را با هم بررسی می کنیم:سومین ساختار حلقه در C++ حلقه do- while است که بلاکی از کد را تا زمانی که شرط معینی true است اجرا می کند. حلقه do-while تقریبا مشابه حلقه while است با این تفاوت که شرط حلقه در انتهای حلقه است برخلاف حلقه while که در ابتدای قرار دارد. ساختار کلی آن به شکل زیر است:

}do
loop_body
{
;while (condition

condition یک عبارت شرطی است و تا وقتی که درست (یا غیرصفر) باشد بدنه حلقه تکرار می شود. چون شرط در انتها بررسی می شود بدنه حلقه حداقل یکبار اجرا می شود. اگر شرط برقرار نباشد حلقه به پایان می رسد و کنترل به دستور بعد از do-while منتقل می شود. بدنه حلقه می تواند یک دستور ساده باشد که در اینصورت نیازی به آکولاد نمی باشد.
دیاگرام حلقه do-while به صورت زیر است:

مثال. قطعه کد زیر اعداد ۱ تا ۲۰ را نمایش می دهد.

;int count = 1
}do
;cout << count << endl
;  count++
;while( count <= 20)

حلقه های do-while هم مشابه حلقه های for و while می توانند تودرتو باشند. دقت کنید که ساختار حلقه باید کاملا درون حلقه دیگر باشد و نباید overlap باشد.