條件表示式是 C 語言中非常有用的工具,它允許程式設計師根據特定條件執行不同的塊。 條件表示式的語法非常簡潔易懂。 其一般形式為:
條件表示式表示式 1 : 表示式 2
如果條件表示式的值為 true(不是 0),則執行表示式 1,否則執行表示式 2。 當滿足特定條件時需要執行特定 ** 時,此結構特別有用。
條件表示式的使用非常靈活,在各種方案中都很有用。 例如,假設我們有乙個整數變數 x,我們可以使用條件表示式來檢查 x 是否大於 10:
int x = 15;
const char *result = (x > 10) ?"x 大於 10" : "x 小於或等於 10";
在此示例中,由於 x 的值為 15,因此條件表示式的值為 true,我們得到字串"x 大於 10"。
下面是使用條件表示式處理學生成績並通過考試的更複雜示例:
#include
int main() else if (score >= 80) else if (score >= 70) else if (score >= 60) else
printf("分數介於 %d 和 %d 之間,成績為 %c", grade - 'a' + 60, grade - 'a' + 60 + 5, grade);
return 0;
在此示例中,我們使用多個 if-else 語句根據分數確定成績。 雖然此示例不直接使用條件表示式,但我們可以將其中一些 if-else 語句替換為條件表示式以簡化它。 例如,我們可以將確定是否通過考試的 ** 塊替換為以下條件表示式:
grade = score >= 90 ? 'a' : score >= 80 ? 'b' : score >= 70 ? 'c' : score >= 60 ? 'd' : 'f';
與下乙個相比,您認為使用條件表示式的方式是否更簡潔?