حلقه do-while در C

حلقه do-while که بدنه آن حداقل یکبار اجرا می‌شود و تفاوت آن با while

حلقه do-while

این حلقه شبیه while است با یک تفاوت مهم: بدنه آن حداقل یک‌بار اجرا می‌شود، حتی اگر شرط از ابتدا غلط باشد! چون شرط بعد از اجرای بدنه بررسی می‌شود:

do {
    // کد تکرارشونده
} while (condition);  // ⚠️ نقطه‌ویرگول آخر فراموش نشود!

مثال

int i = 1;

do {
    printf("%d\n", i);
    i++;
} while (i <= 5);

تفاوت while و do-while

// while: شرط اول بررسی می‌شود
int x = 100;
while (x < 10) {
    printf("اجرا نمی‌شود");  // ❌ هرگز اجرا نمی‌شود
}

// do-while: بدنه اول اجرا می‌شود
int y = 100;
do {
    printf("یکبار اجرا می‌شود!");  // ✅ یکبار اجرا می‌شود
} while (y < 10);

کاربرد اصلی: منوها و ورودی کاربر

do-while برای مواقعی عالی است که باید حداقل یک‌بار کاری انجام شود؛ مثل نمایش منو تا زمانی که کاربر گزینه خروج را انتخاب کند:

int choice;

do {
    printf("1. شروع بازی\n2. تنظیمات\n3. خروج\n");
    scanf("%d", &choice);
} while (choice != 3);

مقایسه سه حلقه C

حلقهزمان بررسی شرطحداقل اجرابهترین کاربرد
forقبل از بدنه۰ بارتعداد تکرار مشخص
whileقبل از بدنه۰ بارتکرار تا رخ دادن رویداد
do-whileبعد از بدنه۱ بارمنوها، ورودی کاربر

نکات مهم

این مبحث بخشی از دوره آموزش کامل زبان C است.

ابزارهای مرتبط