زبان برنامه نویسی سی/حلقه do while و while: تفاوت میان نسخه‌ها

محتوای حذف‌شده محتوای افزوده‌شده
جزبدون خلاصۀ ویرایش
بدون خلاصۀ ویرایش
خط ۴۲:
'''نکات :'''
 
با دستور break شما می‌توانید حلقه را در هر جای آن بشکنید و اجرای آن را متوقف و روند اجرای برنامه را به بعد از حلقه بسپارید ؛ که البته واضح است شما می‌توانید با کمک دستورات شرطی ( if ها ) برای شکستن حلقه خود اقدام کنید . دستور goto روند اجرای برنامه را به برچسب نام برده شده در آن انتقال می‌دهد . شما حلقه‌ها را تنها در تابع‌ها می‌توانید به کار ببرید و اگر در داخل حلقه خود از دستور return استفاده کنید مقدار نسبت داده شده به return برای تابع در نظر گرفته می‌شود و حلقه شکسته می‌شود ( اجرای آن به پایان می‌رسد ) در هر کدام از حلقه‌های do while و while نوشتن دستور continue باعث می‌شود تا روند اجرای برنامه به انتهای حلقه برود و یک بار دیگر از اول بررسی کند که شرط برقرار است یا خیر و دستوراتی که مابین آن تا انتهای حلقه قرار دارند نادیده گرفته می‌شوند که بدیهی است می‌توانید آن را با کمک دستورهای شرطی ( if ها ) به اجرا بگذارید . ضمن اینکه شما می‌توانید دستورات حلقه do while و while را هر دو را یا هر کدام از آنها را به صورت تو در تو نیز بنویسید و محدودیتی برای تعداد تو در تو نوشتن حلقه‌ها وجود ندارد . ضمناً شما می‌توانید داخل یک حلقه do while یا while از حلقه یا حلقه‌های for نیز استفاده کنید ، عکس آن نیز امکان پذیر است ؛ یعنی می‌توانید داخل حلقه‌های for خود از حلقه‌های do while و while استفاده کنید و محدودیتی ندارید
 
'''دقت کنید :''' شما برای عبارت شرطی ( conditional-expression ) می‌توانید با کمک عملگرها ، از چند زیر عبارت استفاده کنید مثلاً :
خط ۵۱:
 
که بدین معنی است که تا زمانی که متغیر i بزرگ‌تر از ۵ است و مساوی با ۱۶ نیست ؛ حلقه اجرا و تکرار می‌شود ( که بدیهی است باید در داخل حلقه مقدار i مرتب افزایش یابد که با یک ++i امکان پذیر است که در هر بار اجرا ، i که مثلاً مقدار ۶ دارد ، یک واحد یک واحد مقدارش افزایش خواهد یافت )
 
مثال :
 
{{چپ‌چین}}
<source lang=C#>
#include<stdio.h>
 
int checkPrime(int isItPrime);
 
int main()
{
 
printf("Counting Prime Numbers between twos\nEnter two numbers , the First number must be smaller\n");
int num1, num2;
scanf("%d%d", &num1, &num2);
int count = 0;
do{
num1++;
if(checkPrime(num1)==1)
count++;
}while(num1<num2);
printf("%d\n", count);
return 0;
}
 
int checkPrime(int isItPrime)
{
 
int result = 0, j = 2;
while(j < isItPrime)
{
result = (isItPrime%j);
j++;
if (result==0)
return 0;
}
return 1;
}
</source>
{{پایان چپ‌چین}}
 
[[رده:زبان برنامه نویسی سی]]