計算機概論:C/C++程式設計
|
第3章. 讓程式選擇與決定:流程控制 |
| ||||||||||||||
|
授課教師:陳慶瀚 WWW : http://www.miat.ee.isu.edu.tw/cpp E-mail : pierre@isu.edu.tw |
| ||||||||||||||
3.1 if條件陳述(if conditional statement)
在
if statements 中可以靠判斷數值或變數的狀態來提供程式分岔(判斷),可以讓程式依條件而被執行或者是被略過。基本的型式如下: if(運算式) 程式陳述; 或 if(運算式) { 程式陳述1; 程式陳述2; ......; } if指令後接著一個執行判斷功能的運算式,該運算式必需包含在一組小括號之內。運算式主要目的在於評估TRUE或FALSE。如果該運算式為TRUE,則隨後的程式敘述才會被執行,當必須執行的程式敘述超過一行,我們就要使用大括號將所有程式敘述含括起來形成一個程式區塊,如第二種形式。如果該運算式為FALSE,
則隨後的if程式區塊內的陳述將不會被執行。例如,
if( degree >= 60 )
cout<<"Pass!"; 在這個程式片斷中,運算式degree
>= 6將根據變數degree的數值來判斷是否為TRUE,若是,則在螢幕輸出Pass!。 上述運算式(
degree >= 60 )當中,我們使用了>=這個運算子,它用來評估運算子左邊的運算式是否大於或等於其右邊的運算式,如果為真,則整個判斷式(
degree >= 60 )傳回TRUE,如果不為真,則傳回FALSE。在C++語言中,布林數(boolean
number)true/false和整數1/0是可以等同互換的。 比較運算子用於評估兩個運算式的比較關係,包括等於、大於、小於等等,他們通常被應用在
if 陳述中。除了>=,C++語言中還提供了其他的比較運算子,表3.1列出這些運算子和他們的意義。 表3.1、比較運算子和意義
接下來程式利用一個if陳述來判斷使用者的輸入的數值並決定在螢幕輸出的文字。 /*----------------------------------------------------*/ //
範例程式3-1 //
/*----------------------------------------------------*/ #include
<iostream.h> void main() {
int degree;
cout<<"請輸入一個分數-->";
cin>> degree;
if(degree >= 60 )
{
cout<<"及格\n
";
} if(degree < 60 )
{
cout<<"不及格!";
} } 程式執行範例--
請輸入一個分數-->78
及格 接下來的程式判斷鍵盤輸入的值是否是介於A到Z之間 /*----------------------------------------------------*/ //
範例程式3-2 //
/*----------------------------------------------------*/ #include
<iostream.h> void main() {
char letter;
cout<<"輸入一個字元-->";
cin>>letter;
if( letter >= 'A' )
{ if( letter <= 'Z'
)
cout<<"這個字元介於A和Z之間\n";
} } 程式執行範例:
輸入一個字元-->C
這個字元介於A和Z之間 雖然比較運算子通常使用在if陳述中,但並非一定得放在if陳述內。事實上比較運算式可以放在任何的陳述中。範例程式3-3及3-4展示這些可能性。 /*----------------------------------------------------*/ //
範例程式3-3 //
/*----------------------------------------------------*/ #include
<iostream.h> void main() { jane
= 44;
//assignment陳述 harry
= 12; //assignment陳述 cout<<(jane
== harry)<<endl;
//false
cout<<(harry
<= 12)<<endl;
//true
cout<<(jane
> harry)<<endl; //true cout<<
(jane >= 44)<<endl;
//true cout<<
(harry != 12)<<endl; //false cout<<
(7 < harry)<<endl;
//true } /*----------------------------------------------------*/ //
範例程式3-4 //
/*----------------------------------------------------*/ #include
<iostream.h>
void
main() { int numb;
cout <<
"請輸入一個數值:
"; cin >>
numb; cout <<
"判斷式numb<10為
" << (numb < 10)
<< endl;
cout <<
"判斷式numb>10為"
<< (numb > 10)
<< endl;
cout <<
"判斷式numb==10為"
<< (numb == 10) << endl;
} 課堂練習3-1 設計一個程式,讓使用者輸入一個整數值,判斷該整數是否可以被7整除,若是,輸出"7的倍數"。 |
||||||||||||||||
計算機概論:C/C++程式設計 義守大學電機系 陳慶瀚 |