C++ 條件與 If 語句:掌握邏輯判斷與流程控制精髓

小万哥丶發表於2024-04-02

C++ 條件和 If 語句

您已經知道 C++ 支援數學中的常見邏輯條件:

  • 小於:a < b
  • 小於或等於:a <= b
  • 大於:a > b
  • 大於或等於:a >= b
  • 等於:a == b
  • 不等於:a != b

您可以使用這些條件來針對不同的決定執行不同的操作。

C++ 具有以下條件語句:

  • 使用 if 來指定一個程式碼塊,如果指定的條件為 true,則執行該程式碼塊
  • 使用 else 來指定一個程式碼塊,如果相同的條件為 false,則執行該程式碼塊
  • 使用 else if 來指定一個新的條件進行測試,如果第一個條件為 false,則執行該條件
  • 使用 switch 來指定許多替代程式碼塊來執行

if 語句

使用 if 語句來指定一個程式碼塊,如果條件為 true,則執行該程式碼塊。

語法

if (condition) {
  // 如果條件為 true,則執行的程式碼塊
}

請注意,if 是小寫字母。大寫字母(IfIF)將生成錯誤。

在下面的示例中,我們測試兩個值,以判斷 20 是否大於 18。如果條件為 true,則列印一些文字:

示例

if (20 > 18) {
  cout << "20 is greater than 18";
}

我們也可以測試變數:

示例

int x = 20;
int y = 18;
if (x > y) {
  cout << "x is greater than y";
}

示例解釋

在上面的示例中,我們使用兩個變數 xy 來測試 x 是否大於 y(使用 > 運算子)。由於 x 是 20,y 是 18,我們知道 20 大於 18,因此我們列印到螢幕上的是 "x is greater than y"。

如果 x 大於 y,則列印 "Hello World"。

int x = 50;
int y = 10;
if (x > y) {
  cout << "Hello World";
}

else 語句

使用 else 語句來指定一個程式碼塊,如果條件為 false,則執行該程式碼塊。

語法

if (condition) {
  // 如果條件為 true,則執行的程式碼塊
} else {
  // 如果條件為 false,則執行的程式碼塊
}

示例

int time = 20;
if (time < 18) {
  cout << "Good day.";
} else {
  cout << "Good evening.";
}
// 輸出 "Good evening."

示例解釋

在上面的示例中,時間(20)大於 18,因此條件為 false。因此,我們進入 else 條件,並列印到螢幕上 "Good evening"。如果時間少於 18,則程式會列印 "Good day"。

else if 語句

使用 else if 語句在第一個條件為 false 時指定一個新條件。

語法

if (condition1) {
  // 如果 condition1 為 true,則執行的程式碼塊
} else if (condition2) {
  // 如果 condition1 為 false 且 condition2 為 true,則執行的程式碼塊
} else {
  // 如果 condition1 和 condition2 均為 false,則執行的程式碼塊
}

示例

int time = 22;
if (time < 10) {
  cout << "Good morning.";
} else if (time < 20) {
  cout << "Good day.";
} else {
  cout << "Good evening.";
}
// 輸出 "Good evening."

示例解釋

在上面的示例中,時間(22)大於 10,因此第一個條件為 false。在 else if 語句中的下一個條件也為 false,因此我們進入 else 條件,因為 condition1condition2 均為 false,並列印到螢幕上 "Good evening"。

然而,如果時間為 14,我們的程式將列印 "Good day"。

C++ 簡寫 If Else

簡寫 If...Else(三元運算子)

還有一種簡寫的 if else,稱為三元運算子,因為它由三個運算元組成。它可以用來用單行程式碼替換多行程式碼。通常用於替換簡單的 if else 語句:

語法

variable = (condition) ? expressionTrue : expressionFalse;

而不是編寫:

示例

int time = 20;
if (time < 18) {
  cout << "Good day.";
} else {
  cout << "Good evening.";
}

您可以簡單地編寫:

示例

int time = 20;
string result = (time < 18) ? "Good day." : "Good evening.";
cout << result;

最後

為了方便其他裝置和平臺的小夥伴觀看往期文章:

微信公眾號搜尋:Let us Coding,關注後即可獲取最新文章推送

看完如果覺得有幫助,歡迎點贊、收藏、關注

相關文章