حلقه do-while در C

حلقه do-while در زبان برنامه‌نویسی C

حلقه do-while یکی از ساختارهای کنترلی مهم در زبان C است که برای تکرار یک بلوک کد تا زمانی که شرط خاصی برقرار باشد استفاده می‌شود. این حلقه تفاوت کلیدی با حلقه while معمولی دارد که در ادامه به بررسی آن می‌پردازیم.

ساختار کلی حلقه do-while

سینتکس اصلی این حلقه به صورت زیر است:

do {

// بلوک کدهای اجرایی

} while (شرط);

مهم‌ترین ویژگی این حلقه این است که حداقل یک بار اجرا می‌شود، حتی اگر شرط از ابتدا نادرست باشد. این برخلاف حلقه while است که ممکن است حتی یک بار هم اجرا نشود.

مثال کاربردی

در این مثال، برنامه از کاربر می‌خواهد عددی بین 1 تا 10 وارد کند و تا زمانی که عدد معتبر وارد نشده باشد، این درخواست تکرار می‌شود:

کد برنامه توضیحات
int num;
do {
  printf("عدد بین 1 تا 10 وارد کنید: ");
  scanf("%d", &num);
} while (num < 1 || num > 10);
- ابتدا دستورات اجرا می‌شوند
- سپس شرط بررسی می‌شود
- اگر شرط درست باشد، حلقه تکرار می‌شود

مقایسه با حلقه while

  • حلقه while: ابتدا شرط بررسی می‌شود، سپس کد اجرا می‌شود (ممکن است هیچ‌گاه اجرا نشود)
  • حلقه do-while: ابتدا کد اجرا می‌شود، سپس شرط بررسی می‌شود (حداقل یک بار اجرا می‌شود)
نکته مهم: در حلقه do-while حتماً بعد از while باید نقطه‌ویرگول (;) قرار دهید، در حالی که در حلقه while معمولی اینگونه نیست.

کاربردهای متداول

  1. منوهای تعاملی در برنامه‌های کنسولی
  2. اعتبارسنجی ورودی کاربر
  3. پردازش داده‌ها تا رسیدن به شرایط خاص
  4. شبیه‌سازی بازی‌هایی که نیاز به حداقل یک دور اجرا دارند

برای یادگیری عمیق‌تر و مشاهده مثال‌های پیشرفته‌تر، می‌توانید اینجا را انتخاب کنید.


در استفاده از حلقه do-while دقت کنید که حتماً متغیرهای شرط را قبل از حلقه مقداردهی کنید و از حلقه‌های بی‌نهایت با تغییر ندادن متغیرهای شرط جلوگیری نمایید.