در آموزش های قبلی انواع حلقه در برنامه نویسی C را بررسی کردیم. در این آموزش به کمک مثال های مختلف شیوه استفاده از دستورات break و continue را یاد خواهید گرفت.
break در C
دستور break، بلافاصله حلقه را خاتمه می دهد و برنامه به بعد از حلقه منتقل می شود. ساختار break:
توی این پک فوق العاده، صفرتاصد مبانی برنامه نویسی رو جوری یاد میگیری که تو هیچ کلاس آموزشی یا پک دیگه ای نه دیدی نه شنیدی! بدون هیچ کلاسی، با صفرتاصد مبانی برنامه نویسی اپلیکیشن بزن، پروژه محور یاد بگیر و حسابی پول در بیار!
break;
در اکثر مواقع دستور break با دستور if…else داخل حلقه استفاده می شود.
دستور break چگونه کار می کند؟
مثال ۱: دستور break
// برنامه محاسبه مجموع اعداد ورودی (حداکثر ۱۰ عدد)
// اگر کاربر عدد منفی وارد کند، حلقه تمام می شود
#include <stdio.h>
int main() {
int i;
double number, sum = 0.0;
for (i = 1; i <= 10; ++i) {
printf(“Enter a n%d: “, i);
scanf(“%lf”, &number);
// اجرا می شود break اگر کاربر عدد منفی وارد کرده باشد، دستور
if (number < 0.0) {
break;
}
sum += number; // sum = sum + number;
}
printf(“Sum = %.2lf”, sum);
return 0;
}
خروجی
Enter a n1: 2.4
Enter a n2: 4.5
Enter a n3: 3.4
Enter a n4: -3
Sum = 10.30
این برنامه حداکثر مجموع ۱۰ عدد را محاسبه می کند و اگر قبل از رسیدن به تکرار ۱۰ ام حلقه، کاربر عدد منفی وارد کند، دستور break اجرا می شود و حلقه for به پایان می رسد. درنهایت مجموع محاسبه شده نمایش داده می شود.
در برنامه نویسی C از break با دستور switch نیز استفاده می شود.
continue در C
دستور continue، تکرار فعلی حلقه را رد می کند و با تکرار بعدی ادامه می یابد. ساختار دستور continue:
continue;
دستور continue تقریباً همیشه با دستور if…else استفاده می شود.
مثال ۲: دستور continue
// برنامه محاسبه مجموع اعداد ورودی (حداکثر ۱۰ عدد)
// اگر کاربر عدد منفی وارد کند، در مقدار مجموع محاسبه نمی شود
#include <stdio.h>
int main() {
int i;
double number, sum = 0.0;
for (i = 1; i <= 10; ++i) {
printf(“Enter a n%d: “, i);
scanf(“%lf”, &number);
if (number < 0.0) {
continue;
}
sum += number; // sum = sum + number;
}
printf(“Sum = %.2lf”, sum);
return 0;
}
خروجی
Enter a n1: 1.1
Enter a n2: 2.2
Enter a n3: 5.5
Enter a n4: 4.4
Enter a n5: -3.4
Enter a n6: -45.5
Enter a n7: 34.5
Enter a n8: -4.2
Enter a n9: -1000
Enter a n10: 12
Sum = 59.70
در این برنامه وقتی کاربر عدد مثبت وارد کند، این عدد با دستور sum += number; در مقدار مجموع اعداد محاسبه می شود. اما هنگامی که کاربر یک عدد منفی وارد کند، دستور continue اجرا شده و برنامه به ابتدای حلقه بر می گردد، در نتیجه عدد منفی در مقدار مجموع محاسبه نخواهد شد.