4. if判斷式與邏輯運算子:
(1) if判斷式可用來判斷條件是否成立,並且依照條件之成立與否,來執行不同的程式碼。if判斷式的標準形式為:
簡易型:
If (條件)
{
程式碼
}
表示在條件成立的情況下才執行程式碼。
另外是複雜型:
If (條件一)
{
程式碼一
}
else If (條件二)
{
程式碼二
}
else If (條件三)
{
程式碼三
}
else
{
後備程式碼
}
執行的流程是:
先看條件一是否成立,若成立就會執行程式碼一;若不成立就看條件二是否成立,成立就執行程式碼二;這個寫法可以類推到條件三、條件四…等等,若所有條件都不成立,就會執行後備程式碼。上述的「條件」,和布林變數一樣具有true(條件成立)和false(條件不成立)。這些條件的寫法,通常有兩種:
(1-1)
第一種寫法使用到「比較運算子」,去比較其左右兩邊的變數或值。常用的比較運算子如下:
比較運算子 |
意義 |
== |
左邊等於右邊 |
!= |
左邊不等於右邊 |
> |
左邊大於右邊 |
>= |
左邊大於或等於右邊 |
< |
左邊小於右邊 |
<= |
左邊小於或等於右邊 |
如:1>10這個條件,他的意義是「數字1大於數字10」,很明顯這個條件是不成立的。
又如:若已先設定int a = 11; 則a>10這個條件的意義是「數字11大於數字10」,條件成立。
再如:若已先設定string b = "abc”; 則b=="cba” 這個條件即不成立。
完整範例如下:
int a=10;
int b=12;
int c=15;
if (a>15)
{ cout<< "a 大於 15!"; }
else if (a> 5)
{ cout<< "a大於5!"; }
else
{ cout<< "a 太小了";}
執行後顯示:a大於5!。
(1-2)
條件的第二種寫法是直接使用到布林變數。如:
bool is_white = true;
if (is_white)
{ cout<<"我是白的"; }
執行後顯示:我是白的。
(2) 邏輯運算子(&&、||、!):邏輯運算子可以組合多個上述介紹的條件,來形成一個新的大條件。語法如下:
※ 條件一 && 條件二: 取兩條件之交集,兩條件必須都成立,大條件才成立。
※ 條件一 || 條件二: 取兩條件之聯集,兩條件只要有一個成立,大條件就成立。(|不是英文字的L小寫,其稱為「管線符號」。在鍵盤中要打出管線符號,可先按住shift鍵不放,再按 \ 鍵。)
※ !條件: 取該條件之反集,條件若不成立,大條件就成立。
範例如:
int a=10;
int b=12;
int c=15;
if (a>5 && b<100)
{ cout<< "大條件一成立"<<endl; }
else
{ cout<< "大條件一不成立"<<endl; }
if (a>5 || c<5)
{ cout<< "大條件二成立"<<endl; }
else
{ cout<< "大條件二不成立"<<endl; }
if (!c<5)
{ cout<< "大條件三成立"<<endl; }
else
{ cout<< "大條件三不成立"<<endl; }
執行後顯示:
大條件一成立
大條件二成立
大條件三成立
留言列表