Selection And Control Structures Flashcards

1
Q

The biggest problem of goto() function

A

دستور goto با ايجاد jumping در برنامه نظم اجراي دستورات را برهم زده و باعث عدم توانايي در اشكال زدايي برنامه خواهد شد.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

if // (nested) else if // else

A

ساده ترين دستور انتخاب و انشعاب در زبان C

if (condition)
{
    Statements;
}
else if (condition)
{
    Statement
}
else
}
    Statement
}
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

3 important specification of every software control structure

A

1- sequential execution
2- selection
3- repetition

با وجود اين سه خاصيت ميتوان هر نوع الگوريتم ساده و يا پيچيده اي را طراحي كرد.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

The difference between = and == statements

A

در معادله هاي انتسابي تارگت و يا L-Value ميبايست يك عبارت ساده باشد ولي در جمله هاي مقايسه اي امكان استفاده از هر نوع عبارت پيچيده اي در هر دو طرف جمله وجود دارد.

همچنين از نظر زماني در معادله هاي انتسابي L-Value در زمان حال و طرف ديگر در گذشته اتفاق افتاده است ولي در جمله هاي مقايسه اي هر دو طرف در زمان حال هستند.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Repetition structures

A
  1. while
  2. do while
  3. for

از حلقه while براي مواردي كاربرد دارد كه تعداد تكرار ان مشخص نيست.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Variable initializing

A

در بعضي موارد مثلا به هنگام تعريف متغييري كه قرار است مقدار جمع چندين عدد را كه با استفاده از حلقه for دريافت شده نگه دارد ميبايست ابتدا انرا با عدد صفر مقدار دهي كنيم. در غير اينصورت حاصل جمع عددي اشتباه خواهد بود.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

while / if / break

A

ميتوان در داخل حلقه ها از تركيب كلمات كليدي if و break و continue براي كنترل هر چه بيشتر حلقه استفاده كرد.

while (i

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

while (0) / while (1)

A

اين نوع از loop ها به صورت دايمي تكرار خواهند شد مگر اينكه در داخل حلقه توسط يك شرط و عبارت break استفاده كنيم. در واقع تعداد تكرار اين حلقه ها يا توسط كاربر يا توسط شرط تعيين ميشود.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q
#define TRUE -1
#define FALSE 0
A

كلمه كليري true در زبان سي تعريف نشده و ولي در زبان c++ تعريف شده است. براي استفاده از اين عبارت در حلقه هاي زبان سي ميبايست آنرا با استفاده از دستور زير به عنوان بك pre proccessor و ماكرو تعريف كرد.

#define TRUE -1
#define FALSE 0
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

حلقه while

A
خر حلقه از نوع while داراي چهار بخش اصلي ميباشد. 
1- initializer
2- termination condition 
3- statements
4- update rule, i -> counter

int i = 0; initializer
while (i

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

حلقه for

A

for ( counter ; termination condition; ipdate rule)
{
Statements;
}

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

if / continue / break

A

با استفاده از كلمات كليدي break - continue ميتوان براي شرط اجراي حلقه ها استثنا قايل شد.

Continue برگشت به اول حلقه
Break خروج از حلقه

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

switch

A

جايگزين مناسب براي if هاي تو در توي متوالي است.

switch(variable) {
case A: statements; break;
case B: statements; break;
default: statements; break }

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

do - while loop

A

do {
Statements;
} while (termination condition);

حلقه do-while مستقل از شرط آن حداقل يكبار اجرا خواهد شد.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly