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

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