switch( 表示式)//這個地方不能加分號,表示式必須是字元型或整型執行過程:
一、計算二、找case
三、從找到的case開始,往下全部執行
四、若沒找到case,則從default開始往下全部執行,
若沒default則結束switch語句。
五; 遇見case後面的等式後,有break 就會推出迴圈。
if是選擇結構,有三個形式,它們執行是條件成立只會選乙個執行。第乙個:if (表示式)
語句;第二個:if (表示式)
語句1;
else
語句2;
第三個:
if ( 表示式1 )
語句1;
else if (表示式2 )
語句2;
else if (表示式3 )
語句3;
…...
[ else
語句; ]
switch...case與if...else的根本區別在於,switch...case會生成乙個跳轉表來指示實際的case分支的位址,而這個跳轉表的索引號與switch變數的值是相等的。從而,switch...case不用像if...else那樣遍歷條件分支直到命中條件,而只需訪問對應索引號的表項從而到達定位分支的目的。所以從效率上來說由於if...else的遍歷性,**執行效率是不高的。
if else 和 switch 的區別
一直說想要研究底層原理,把知識學深一些,原來真的像初中的物理老師說的那樣,把基礎的原理都學會,就能做難的題目,高難度題目的框架都是靠簡單的原理搭建的。進入正文 區別 switch i 1 當分支較多時,當時用switch的效率是很高的。因為switch是隨機訪問的,就是確定了選擇值之後直接跳轉到那個...
switch和if語句的選擇區別
switch和多重選擇結構的區別和共同點 相同點在於 都是用來處理多分支條件的結構。不同點在於 switch只能處理等值條件判斷的情況 if選擇結構 基本if選擇結構 處理單一或組合條件的情況 if else選擇結構 處理簡單的條件分支情況 多重if選擇結構 處理複雜的條件分支情況 巢狀if選擇結構...
If 跟 switch 的區別
if 語法如下 在這裡我只寫出一種形式了 if 表示式 方法體 else if 表示式 表示式支援 可以是可以是邏輯表示式 關係表示式 任意的數值型別 包括整型 實型 字元型 指標型資料,但實際上編譯系統會把這個表示式強制轉成邏輯值,一般地false都為0 1或任何非零數值都是trueif 適合 條...