بخشی از پاورپوینت

اسلاید 1 :

فصل پنجم

دستورهای کنترلی

اسلاید 2 :

مطالب فصل پنجم
مقدمه
دستور while
دستور do-while
دستور for
دستور if و if-else
دستور switch
دستور break
دستور continue
دستور goto
تابع exit

اسلاید 3 :

فصل پنجم– مقدمه
ساختارهای كنترلي اين امكان را فراهم مي سازند كه قطعه اي از برنامه تا موقعي كه شرط ويژه اي برقرار است چندين بار اجرا شود.
در حالت عادي دستورهاي هر برنامه به طور متوالي اجرا مي شود. اما اگر نياز باشد كه دستور يا مجموعه اي از دستورها در صورت وجود يا عدم وجود شرط يا شرايط خاصي اجرا گردند، باید از ساختارهای کنترلی استفاده نمود.

مهم ترين دستورهاي كنترلي:
ساختارهاي حلقه هاي تكرار (while و for و do _ while)
دستورهاي شرطي يا ساختارهاي تصميم گيري ( if و switch)
دستورهاي exit و break و continue و goto.

در زبان C هر مقدار غيرصفر (مثبت يا منفي) درست یا true (يعني شرط مورد نظر برقرار است) و مقدار صفر نيز نادرست يا false تلقی می گردد.

اسلاید 4 :

فصل پنجم– دستور while
دستور while:
با استفاده از اين دستور، حلقه تا موقعي كه شرط معيني برقرار باشد اجرا مي گردد.
while (شرط)
یک دستور;
while (شرط)
{
دستورات;
}
تا موقعي كه شرط مورد نظر كه پس از كلمة كليدي while در داخل پرانتز نوشته مي شود برقرار باشد، مجموعه دستورهاي داخل حلقة while به صورت تكراري اجرا خواهد شد. در غیر اینصورت کنترل به بعد از حلقه while منتقل می شود.

اسلاید 5 :

فصل پنجم– دستور while
مثال : برنامة زير به دو روش اعداد صحيح صفر تا ۱۰ را در روي خطوط متوالي چاپ مي كند.

اسلاید 6 :

فصل پنجم– دستور while
مثال : برنامه اي بنويسيد كه عدد صحيح n را بخواند و فاكتوريل آن را حساب و با خود عدد چاپ کند.

اسلاید 7 :

فصل پنجم– دستور while
مثال : قطعه برنامه زیر چه عملی انجام می دهد؟ (اگر به n عدد 6 بدهید)
#include
#define Ten 10
main()
{
int n=0;
scanf("%d",&n);
while (n++printf("%5d",n);
}

اسلاید 8 :

فصل پنجم– دستور while
مثال : برنامة زير يك خط متن با حروف كوچك را كاراكتر به كاراكتر از آراية text مي خواند. سپس با استفاده از تابع كتابخانه اي toupper متن مزبور را به حروف بزرگ تبديل و چاپ مي كند.

اسلاید 9 :

فصل پنجم– دستور do-while
در دستور whileآزمايش شرط براي ادامة حلقه در آغاز هر تكرار حلقه انجام مي گيرد. گاهي مطلوب است كه اين آزمايش در پايان حلقه انجام شود. اين كار با دستور كنترلي do-while امكا نپذير است.
شکل كلي دستور do-while به صورت زير است:
do
یک دستور ;
while (شرط) ;

do
{
دستورات ;
}while (شرط) ;
در اينجا اول دستورات اجرا مي گردد، سپس شرط داخل پرانتز بررسي مي شود. بنابراين، در اين ساختار هميشه دستورات حداقل يك بار اجرا خواهد شد.

اسلاید 10 :

فصل پنجم– دستور do-while
مثال : برنامه اي بنويسيد كه با استفاده از دستور do - while اعداد صحيح صفر تا 10 را در روي خطوط متوالي چاپ كند.
#include
main ()
{
int number = 0 ;
do
printf ("%d\n", number + +) ;
while (number<=10) ;
{

اسلاید 11 :

فصل پنجم– دستور do-while
مثال : خروجی برنامه زیر چیست؟
#include
main ()
{
int a=6,b=10;
do
{
b*=b%a;
printf ("%5d",b);
a+=1;
}
while (a<10) ;
}

اسلاید 12 :

فصل پنجم– دستور do-while
مثال : خروجی برنامه زیر چیست؟
#include
main ()
{
int a=6,b=10;
do
{
b*=b%a;
printf ("%5d",b);
a+=1;
} while (a<10) ;
}

اسلاید 13 :

فصل پنجم– دستور for
دستور for متداول ترين دستور حلقه در زبان C و شبيه به دستور while است.
شکل كلي اين دستور نيز به صورت زير است:
for (مقداردهی اولیه; شرط ادامه حلقه; گام حرکت)
یک دستور;

for (مقداردهی اولیه; شرط ادامه حلقه; گام حرکت)
{
دستورات;
}
اجرای حلقه تا زمانی که شرط برقرار باشد (true) ادامه خواهد داشت.

اسلاید 14 :

فصل پنجم– دستور for
مثال: برنامه فاکتوریل را با دستور for بنویسید.
#include
main ()
{
int i , n , fact =1 ;
scanf ("%d", &n) ;
for (i=2 ; i<=n ; ++i)
fact = fact * i ;
printf ("factorial of %d is %d", n , fact) ;
}

اسلاید 15 :

فصل پنجم– دستور for
مقایسه for و while :
for (مقداردهی اولیه; شرط ادامه حلقه; گام حرکت)
{
دستورات;
}
مقداردهی اولیه;
while (شرط ادامه حلقه)
{
دستورات;
گام حرکت;
{

اسلاید 16 :

فصل پنجم– دستور for
نکته1: هر یک از سه جمله داخل پرانتز for را می توان ننوشت. اما گذاشتن ; مربوط به هر قسمت الزامی است. مثل for( ; ; );

اگر جمله دوم (که شرط ادامه حلقه است) نوشته نشود، این شرط همواره true بوده و در نتیجه تکرار حلقه به صورت نامتناهی ادامه می یابد. مگر اینکه خروج از حلقه با دستور دیگری مثل break یا return پیش بینی گردد.

for (i=0; ; i++)
{
a+=b;
if (i=10)
break;
}

نکته2: وقتی حلقه تکراری درون حلقه دیگری قرار داشته باشد، به این حالت حلقه های تو در تو گفته می شود. در این موارد به ازای هر بار اجرای حلقه خارجی، حلقه داخلی به طور کامل انجام می گیرد. همچنین انتهای حلقه داخلی زودتر از حلقه خارجی مشخص می گردد.
نکته3: اگر حلقه های تو در تو از یکجا شروع و به یکجا ختم شوند، در این حالت حلقه خارجی نیازی به آکولاد ندارد و حلقه داخلی برای حلقه خارجی نقش یک جمله را خواهد داشت.

اسلاید 17 :

فصل پنجم– دستور for
نکته3: اگر حلقه های تو در تو از یکجا شروع و به یکجا ختم شوند، در این حالت حلقه خارجی نیازی به آکولاد ندارد و حلقه داخلی برای حلقه خارجی نقش یک جمله را خواهد داشت.
int i,j;
for ( i = 0; i<10 ; i++ )
for ( j = 0; j<10 ; j++ )
printf(“%3d”,i*j);

اسلاید 18 :

فصل پنجم– دستور for
مثال: مقدار count پس از اتمام حلقه چند خواهد بود؟

count=0;
for ( i = 0; i<=3 ; i++ )
for ( j = 0; j<=i ; j++ )
count++;

اسلاید 19 :

فصل پنجم– دستور for
مثال: مقدار count پس از اتمام حلقه چند خواهد بود؟

count=0;
for ( i = 0; i<=3 ; i++ )
for ( j = 0; j<=i ; j++ )
count++;

اسلاید 20 :

فصل پنجم– دستور if و if-else
دستور if و if-else
دستورهاي شرطي براي انجام آزمون منطقي و برگزيدن يکي از دو حالت ممکن (true یا false) استفاده مي شود. اين دستورها را ساختارهاي تصميم نيز مي نامند.
دستور if به صورتهاي if و if-else به كار مي رود.
فرم کلی دستور if بصورت :
if (شرط)
یک دستور ;

if (شرط)
{
دستورات ;
}
اگر شرط برقرار باشد، دستورات مربوط به if اجرا می شوند، وگرنه به اولین دستور بعد از ساختار if انتقال می یابد.

در متن اصلی پاورپوینت به هم ریختگی وجود ندارد. برای مطالعه بیشتر پاورپوینت آن را خریداری کنید