決策結構要求程式員指定要由程式評估求值或測試一個或多個條件,如果條件被確定為真(True),則要執行語句;可選地,如果條件確定為假(False)則執行的其他語句。
以下是大多數編程語言中典型的決策結構的一般形式:

C# 提供以下類型的決策語句。點擊下麵相應鏈接查看細節。
| 語句 | 描述 |
|---|---|
| if語句 | if語句由一個布爾運算式,後跟一個或多個語句組成。 |
| if-else語句 | 一個if語句可以跟隨一個可選的else語句,當布爾運算式為false時,它將執行else塊中的代碼。 |
| 嵌套if語句 | 可以在另一個if或else語句中使用一個if或else if語句。 |
| switch語句 | switch語句允許測試一個變數相對於一個值的列表。 |
| 嵌套switch語句 | 在另一個switch語句中可以使用另一個switch語句。 |
?: 運算符
在上一章中我們已經涵蓋了條件運算符?:,可以用它來替換if...else語句。它具有以下一般形式:
Exp1 ? Exp2 : Exp3;
其中Exp1,Exp2和Exp3是運算式。請注意冒號的使用和位置。
首先,對Exp1運算式進行評估求值,如果求值結果是真,那麼Exp2被評估並返回作為整個的值。如果Exp1求值結果為假(false),則對Exp3運算式進行求值,其值返回作為運算式的值。
int a = 1;
int b = 2;
int c = 0;
c = (a>b)? a: b; // 執行後,變數c的值為:2
