午夜视频在线瓜伦,亚洲精品国产精品乱码不99,精品久久久久中文字幕app,亚洲精品美女久久久久99

當(dāng)前位置:首頁(yè) > 其他資訊 > 正文

switch語(yǔ)句案例:如何運(yùn)用case進(jìn)行選擇判斷

系統(tǒng)會(huì)計(jì)算并獲取switch語(yǔ)句后面小括號(hào)內(nèi)的表達(dá)式或變量的值。隨后,這個(gè)計(jì)算結(jié)果會(huì)與每個(gè)case后面的常量進(jìn)行比較。

當(dāng)二者的值相等時(shí),就會(huì)執(zhí)行該case塊中的代碼。若在代碼中遇到break關(guān)鍵字,程序會(huì)跳出當(dāng)前的switch選擇結(jié)構(gòu),并執(zhí)行switch選擇結(jié)構(gòu)之后的代碼。

如果任何一個(gè)case后面的常量與switch后小括號(hào)中的值都不相等,那么程序會(huì)執(zhí)行switch尾部的default塊中的代碼。

關(guān)于switch case的詳細(xì)解釋?zhuān)?/p>

1. "Switch"在編程中意為“開(kāi)關(guān)”,它是一種“選擇”語(yǔ)句,使用方式十分簡(jiǎn)便。

2. Switch語(yǔ)句是一種多分支選擇語(yǔ)句。簡(jiǎn)而言之,多分支就是多個(gè)if語(yǔ)句的 *** 。

3. 從功能上看,switch語(yǔ)句和if語(yǔ)句可以相互替代,但在編程實(shí)踐中,它們各有特點(diǎn)。在選擇的分支較多時(shí),C語(yǔ)言提供switch語(yǔ)句以處理多分支選擇,使程序更加簡(jiǎn)潔。if和switch可以說(shuō)是各有分工。在許多大型項(xiàng)目中,多分支選擇的情況很常見(jiàn),所以switch語(yǔ)句的使用頻率相對(duì)較高。

4. Switch語(yǔ)句的一般形式為:先給出switch后面的表達(dá)式,然后是一系列的case和default語(yǔ)句。每個(gè)case后面跟一個(gè)常量表達(dá)式和對(duì)應(yīng)的執(zhí)行語(yǔ)句,default是所有case都不匹配時(shí)的默認(rèn)執(zhí)行塊。

擴(kuò)展說(shuō)明:

1. Switch后面的括號(hào)內(nèi)的“表達(dá)式”必須是整數(shù)類(lèi)型,可以是int型變量、char型變量,也可以是整數(shù)或字符常量。但絕對(duì)不能是實(shí)數(shù),如float型變量、double型變量、小數(shù)常量等,這些都是語(yǔ)法錯(cuò)誤。

2. 所有的case和default必須被一對(duì)大括號(hào){}包圍。

3. 當(dāng)switch后面括號(hào)內(nèi)的表達(dá)式的值與某個(gè)case后面的常量表達(dá)式的值相等時(shí),會(huì)執(zhí)行該case后的語(yǔ)句。執(zhí)行完一個(gè)case的語(yǔ)句后,程序流程會(huì)繼續(xù)執(zhí)行下一個(gè)case的語(yǔ)句。若只想執(zhí)行一個(gè)case的語(yǔ)句而不執(zhí)行其他case的語(yǔ)句,需在該case的語(yǔ)句后加上break以跳出switch語(yǔ)句。

需再次強(qiáng)調(diào)的是:switch是“選擇”語(yǔ)句而非“循環(huán)”語(yǔ)句。盡管break常被誤認(rèn)為是用于循環(huán)的結(jié)束,但在switch語(yǔ)句中,break的主要作用是跳出switch結(jié)構(gòu)。

另外一些注意事項(xiàng):

1. 所有case后面的常量表達(dá)式的值必須互不相同,否則會(huì)造成語(yǔ)法錯(cuò)誤和程序矛盾。

2. “case常量表達(dá)式”僅作為語(yǔ)句的標(biāo)號(hào),不進(jìn)行實(shí)際判斷。程序會(huì)根據(jù)switch后面的表達(dá)式的值找到匹配的標(biāo)號(hào)并從此標(biāo)號(hào)開(kāi)始執(zhí)行。

3. case和default的出現(xiàn)次序不影響執(zhí)行結(jié)果,但從閱讀的角度考慮,建議按照字母或數(shù)字的順序書(shū)寫(xiě)。

4. default語(yǔ)句可以省略,但建議加上以提醒他人此為switch語(yǔ)句的結(jié)束。即使default是最后一句,其后也不必加break,因?yàn)閳?zhí)行完后自然就退出了switch。

以下是一個(gè)C語(yǔ)言中switch case語(yǔ)句的實(shí)例:

```c

#include

int main(void){

int a;

printf("請(qǐng)輸入一個(gè)整數(shù):");

scanf("%d", &a);

switch(a){

case 1: printf("星期一\n"); break;

case 2: printf("星期二\n"); break;

case 3: printf("星期三\n"); break;

// 其他情況可以在此繼續(xù)添加...

default: printf("未匹配到對(duì)應(yīng)星期\n"); break; // 如果不匹配任何情況則執(zhí)行此默認(rèn)操作

}

return 0;

```

在這個(gè)例子中,程序會(huì)根據(jù)用戶(hù)輸入的整數(shù)來(lái)輸出對(duì)應(yīng)的星期名稱(chēng)。程序解讀:

本程序是要求輸入一個(gè)數(shù)字,輸出它對(duì)應(yīng)的星期的英文單詞。

注意項(xiàng):

1. 在case后的各常量表達(dá)式的值不能相同,否則會(huì)出現(xiàn)錯(cuò)誤。

2. 在case后,允許有多個(gè)語(yǔ)句,可以不用{}括起來(lái)。

3. 各case和default子句的先后順序可以變動(dòng),而不會(huì)影響程序執(zhí)行結(jié)果。

4. default子句可以省略不寫(xiě)。