1樓:匿名使用者
並不是這樣的。抄
switch語句的格式為:襲
switch(expr)
習慣上把default寫在最下面,bai但實際上就像du寫在中間的case的順序與zhi結果無關dao一樣,default的位置一樣也和結果無關。
當執行switch語句時,無論default位於哪個位置,都會先檢查每個case是否與expr的值相同,如果相同,就會執行對應分支的case,全不相同情況下,才會執行default。
2樓:匿名使用者
switch語句中的default放在前面如果沒加break後執行後面語句,不然的話就不執行後面的case語句。
3樓:匿名使用者
default 是 case 都不滿足的情況下再執行。。。
4樓:匿名使用者
switch
c語言裡,switch語句裡的default的語句上下都有case語句的話,default是什麼時候執行呢?
5樓:匿名使用者
沒有break語句就按順序執行。
可以通過使用關鍵字default來控制預設建構函式的生成,顯式地指示編譯器生成該函式的預設版本。
比如:clas**yclass{public:myclass()=default;//同時提供預設版本和帶參版本,型別是pod的myclass(inti):
data(i){}private:intdata;};有些時候希望限制預設函式的生成。
典型的是禁止使用拷貝建構函式,以往的做法是將拷貝建構函式宣告為private的並不提供實現,這樣當拷貝構造物件時編譯不能通過,c++11則使用delete關鍵字顯式指示編譯器不生成函式的預設版本。
6樓:匿名使用者
你試一下不就知道了。幾個print,
default是在指其他所有情況都不符合才執行。你這都沒有break,case 1執行三個語句,case 2執行最後一句,其他執行後面兩個語句
7樓:♂凡鳥
default是在switch條件不滿足case時候預設執行的內容。
也就是如果條件不是1也不是2的話就從default開始執行。
比如:switch(a)
a=1 輸出」one「
a=2 輸出」two「
a=3 輸出」threetwo 「(因為default那句沒有break所以會繼續執行case 2)
但是你的這段裡面沒有break,所有case執行完之後會接著執行下一句。所以無論條件是幾最後x都是c。
8樓:匿名使用者
判斷的話應該是先判斷case的
case和default是和switch配合使用的,用於列出各種可能如
int a=1;
.......(此處省略)
switch(a) //此處開始判斷
很顯然上面執行的結果為x=1;但如果像樓主寫的那樣沒有break的話執行結果就是x=3;這是因為當執行完x=1後,並沒有跳出switch語句,會繼續執行下面的語句,即x=2;x=3;顯然執行的為x=3。所以建議以後使用switch語句時每個分支要有個break,以免得不到自己想要的結果。
9樓:匿名使用者
樓主這樣寫的方式,,實際上起不到這switch語句的作用,,由於它們後面沒有break,若你輸入的是1,這三個語句都會執行,若是2的話,只執行第三個語句,若你輸入的是其他數(不是1也不是2),它都會執行第二句,和第三句。。。。(尷尬!貌似跟你問的問題關係不大了)。。
default條件控制,從性質上講,它和case的作用差不多,,不過它的意思是當你輸入的數,case種沒有的,,就會執行它後面的語句
10樓:飛花的月
沒有break語句就按順序執行
在c語言中的switch語句裡。如果default放在了case的前面。那麼程式是否還會執行後面的case
11樓:揘皅殼鴍
如果每條case語句和default語句後都加了break;語句,那麼default的放置與位置沒有關係。依靠switch()裡的條件判斷應該執行哪條語句。
c語言中執行完switch語句中的default語句後是跳出
先計算switch括號後面表示式的值。並逐個與其後的常量表示式值相比較,當表示式的值與某個常量表示式的值相等時,即執行其後的語句,如若後面有break語句,則直接跳出。如果沒有break語句,然後不再進行判斷,繼續執行後面的case後的語句。直到遇到break語句跳出。如表示式的值與所有case後的...
c語言中switch和if語句那個執行效率更高
兩個的抄 用法都不一樣,一般if是寫一襲個條件,switch是列舉一些值來判斷,看你需要哪種型別的,這兩個一般沒有說誰效率高的,像樓上說的那種情況,只要是正常人都會選擇用if來寫啦。如果是像那個經典的例子判斷分數段來顯示優良中差的,相信也沒幾個會用if來寫。當然copyif了 因為if判斷的範圍很大...
c語言switchcase語句中呼叫函式求改錯十萬火急
include void main c語言中,如何在switch case後面呼叫函式,一共5個case,都要用函式的呼叫 include void test1 void test2 void test3 void test4 void test5 int main return 0 c語言中,怎樣...