C 在switch語句中default的位置有沒有什麼講究

2021-03-27 06:16:37 字數 3341 閱讀 4660

1樓:匿名使用者

其實沒什麼講究 但習慣上都寫最後 這樣看起來也比軟直觀

c++中switch語句裡的default是怎麼用的?有什麼作用?

2樓:匿名使用者

一般這麼寫:

swith(變數)

default就是當變數的取值不在上面任何一個case的情況下,語句要做處理,其實也是一種case,只不過就是指「除了指定的幾個case以外的其他情況」

3樓:

樓上說的對,default就是switch語句中沒有列出case的所有其他情況。

這是一種安全的程式設計方式,建議寫switch語句一定加default,這樣可以防止不進入分支的錯誤。

c++中switch語句裡的default是怎麼用的,有什麼作用?

4樓:匿名使用者

一般這麼寫:

baiswith(變數

du)default就是當變數的取值不在上面任何一dao個case的情況下,語句要版做權處理,其實也是一種case,只不過就是指「除了指定的幾個case以外的其他情況」

在switch 分支語句中,default 的位置.對結果有沒有影響?

5樓:金色潛鳥

無論bai default 位置在前在後,都是先判斷duzhi 各個case, 最後進 default。

無論 進入某個 case 或dao default,程專序要 執行到 break,或開關的結束屬 才終止。

例如:int c=0,k;

k=1;

switch (k)

例如:int c=0,k;

k=1;

switch (k)

所以開關語句裡的 break 是很重要的。而 case/default 的次序是次要的。

6樓:匿名使用者

你的做法顯然是會有影響的

一般的建議對於default也要使用break,這樣位置的問題就不會存在

7樓:

無論你把default寫在case語句中的任何地方,編譯器都把它安排到最後才執行……

8樓:

一樣的結果。答案都是3

c語言中的switch語句中default位置對語句有沒有影響

9樓:聽不清啊

語言中的switch語句中default位置對語句是沒有影響的(假設每一個case 後面都有相應的break;語句)

10樓:延時祕訣愛利久

寫了是增加**,浪費 不寫執行完default語句後也會跳出來

c語言switch語句中的default放在前面是不是先執行他後面的語句,再執行case語句

11樓:匿名使用者

並不是這樣的。抄

switch語句的格式為:襲

switch(expr)

習慣上把default寫在最下面,bai但實際上就像du寫在中間的case的順序與zhi結果無關dao一樣,default的位置一樣也和結果無關。

當執行switch語句時,無論default位於哪個位置,都會先檢查每個case是否與expr的值相同,如果相同,就會執行對應分支的case,全不相同情況下,才會執行default。

12樓:匿名使用者

switch語句中的default放在前面如果沒加break後執行後面語句,不然的話就不執行後面的case語句。

13樓:匿名使用者

default 是 case 都不滿足的情況下再執行。。。

14樓:匿名使用者

switch

c++中switch語句裡的default是怎麼用的?有什麼作用?

15樓:a羅網天下

舉例**如下:

switch(表示式)

其語義是:計算表示式的值。並逐個與其後的常量表示式值相比較,當表示式的值與某個常量表示式的值相等時,即執行其後的語句,然後不再進行判斷,繼續執行後面所有case後的語句。

如表示式的值與所有case後的常量表示式均不相同時,則執行default後的語句。

default用法如下:

如果default語句在所有case最後,此時可以不加break 如果default語句之後還有case語句,如果不加break,則default語句執行過之後會繼續下面的case語句,此時必須要在default之後加break語句,不過這種default用法是不推薦的,default顧名思義是預設情況,只有任何條件都不匹配的情況下才會執行,所以應該將default語句放在所有case結束之後。

在switch語句中,關鍵字default既能放在該語句的末尾,又能放在開頭或中間 5

16樓:一頁凌風

可以。完全沒有影響。

switch語句的執行效率快就在於此。它不是根據值一個一個比較的,它內是直接跳入到容與case值相匹配的地方執行的,其他的case沒有進行值比較。所以,case和default的位置都是可以任意排放的。

但是任意的case不能相同。

17樓:匿名使用者

對,給他的位置沒關係的

c語言中的switch語句中default放在最前面和最後面有什麼區別?

18樓:會飛的小兔子

c語言中的copyswitch語句中default放在最前面和bai最後面沒有區別du?

switch語句:zhi

switch(expr)

擴充套件資料switch語句的表達dao

#include

voidprint_day(intday)}intmain()

19樓:匿名使用者

最前面case語句不能執行

20樓:終結者

後面的case不能被執行

21樓:我只是天才

在不寫break的情況下復

還是有制區別的!

看了一些大佬寫bai的都挺好du的,但是我來補zhi充一下吧 :)滿足某個case的條件情況dao下執行該「:」後的所有語句,除非遇到break。

在沒有break(或者break不夠的情況下),default放在前面和後面還是有差別的,大家可以看下我寫的**~

在c語言中,if語句後面的else語句中能不能巢狀for迴圈

在c語言中,if.else分支語句與for迴圈語句和其他迴圈及分支都是可以巢狀使用的,也就是說在if語句後面和else語句後面都是可以使用for迴圈語句的,例如 給定一個整數n,判斷這個整數n是不是小於2,如果小於2則提示給定數值不在有效範圍內,否則計算從1到n的累加和。int sum 0 if n...

c 中switch語句裡的default是怎麼用的,有什麼

一般這麼寫 baiswith 變數 du default就是當變數的取值不在上面任何一dao個case的情況下,語句要版做權處理,其實也是一種case,只不過就是指 除了指定的幾個case以外的其他情況 switch case語句中必須得有default語句麼 不是來必須的。switch case ...

在c語言中在for迴圈語句中當執行到continue語

出第一次執行表示式1之外 之後的循序是 表示式2 for語句塊 遇到continue後跳出當前迴圈 表示式3 表示式2 for語句塊 遇到continue後跳出當前迴圈 表示式3 表示式2 如果執行到continue語句時是直接去執行表示式2 而不是去執行表示式3 那麼for語句就很有可能陷入死迴圈...