1樓:喜洋洋
switch (x/1000)
說明:switch語句的執行
1,對switch中的控制表示式進行求值。這裡是對x/1000求值,如果0<=x<1000,求值結果為0,如果1000<=x<2000,結果為1
2,根據控制表示式的求值結果,跳轉到相應的case入口,向後執行。注意是向後執行到整個switch語句之外,而不是隻執行這一個case中包括的語句。通常只需要執行一個case語句,這需要通過goto,return,break,continue等語句來轉移到switch之外。
這裡用的是break語句,如果把第一個break去掉,而的範圍又在0-1000之間,這時不但會輸出x,還會執行下一個case語句,輸出 0.9*x。
3,如果控制表示式的求值結果不等於任何的case入口,則會轉移到default語句(如果有的話,沒有就結束了)。比如這裡還可以加入一個default語句來處理x<0或x>2000的情況
default:
cout << "你輸入的資料不合法 " << endl;
break;
注意,default,不一定要放在所有的case語句之後,也可以放中間或開始的,但通常都放最後,比較符合習慣,所以如果放最後break可以省略。同理上面程式中的第二個break可以省略,但是這不是一個好的程式設計習慣,假如你在以後要在程式中加入一個 case 2的話,就很可能會把break可忘了。
其實default可以看成一個特殊的case語句,它的用法和case是一樣,只是它能匹配所有case入口之外的其餘情況。
c++中switch語句裡的default是怎麼用的?有什麼作用?
2樓:a羅網天下
舉例**如下:
switch(表示式)
其語義是:計算表示式的值。並逐個與其後的常量表示式值相比較,當表示式的值與某個常量表示式的值相等時,即執行其後的語句,然後不再進行判斷,繼續執行後面所有case後的語句。
如表示式的值與所有case後的常量表示式均不相同時,則執行default後的語句。
default用法如下:
如果default語句在所有case最後,此時可以不加break 如果default語句之後還有case語句,如果不加break,則default語句執行過之後會繼續下面的case語句,此時必須要在default之後加break語句,不過這種default用法是不推薦的,default顧名思義是預設情況,只有任何條件都不匹配的情況下才會執行,所以應該將default語句放在所有case結束之後。
c++程式設計裡switch語句怎麼用呢,switch後面括號的內容是什麼意思?比如這個a%3.
3樓:匿名使用者
swith就是先計算括號裡表示式的值,然後逐個與後面的case標籤比較,如果找到匹配的,就從那個case標籤開始向下執行,直到switch語句結束或者遇到break以及其他跳轉語句。
具體到這個程式,就是計算a%3的值,如果是0,就執行case 0後面的語句,如果是1,執行case 1後面的語句m++;
c++中switch語句裡的default是怎麼用的,有什麼作用?
4樓:匿名使用者
一般這麼寫:
baiswith(變數
du)default就是當變數的取值不在上面任何一dao個case的情況下,語句要版做權處理,其實也是一種case,只不過就是指「除了指定的幾個case以外的其他情況」
c語言中switch結構的使用,C語言中switch結構的使用
秋風依舊好 因為case後面不能接範圍,也就是說case後面是一個確實固定的常量.用下面的方法比較好,include int main 你可以先把範圍用字母或常量代替 再用switch語句 資料 include void main else printf score scanf d s system...
C語言用if和switch語句解決問題
sgz我愛羅 我用的是vc,因為tc下中文不能顯示。區域應該都是矩形的,現在給出區域的左上角和右下角的頂點座標 a a1,a2 a3,a4 b b1,b2 b3,b4 c c1,c2 c3,c4 d d1,d2 d3,d4 o o1,o2 o3,o4 如下 include define a1 0 開...
c語言中執行完switch語句中的default語句後是跳出
先計算switch括號後面表示式的值。並逐個與其後的常量表示式值相比較,當表示式的值與某個常量表示式的值相等時,即執行其後的語句,如若後面有break語句,則直接跳出。如果沒有break語句,然後不再進行判斷,繼續執行後面的case後的語句。直到遇到break語句跳出。如表示式的值與所有case後的...