c語言中switch和if語句那個執行效率更高

2021-04-17 21:08:02 字數 1208 閱讀 4140

1樓:肥羊

兩個的抄

用法都不一樣,一般if是寫一襲個條件,switch是列舉一些值來判斷,看你需要哪種型別的,這兩個一般沒有說誰效率高的,像樓上說的那種情況,只要是正常人都會選擇用if來寫啦。如果是像那個經典的例子判斷分數段來顯示優良中差的,相信也沒幾個會用if來寫。

2樓:匿名使用者

當然copyif了

因為if判斷的範圍很大,而baiswicth只是簡單的判斷du值舉個zhi例子

int a;

scanf("%d",&a);

if(1可以一次在dao1到1000之間判斷aswicth(a)

{case 1:

case 2:

.......因為case 後面只能用常量表示,如果要確定a就會有很多個case

所以if的執行效率要比swicth高

3樓:流水高山

應該是witch語句!

c語言中,select...case和 if...else if 哪個執行效率更高

4樓:聽不清啊

從執行效率上來說,合理配置if語句,執行效率可以更高。但是case語句的程式可讀性更好。

(select case ... 是vb的語句,c語言中是switch case ...)

5樓:匿名使用者

switch...case 效率要高於同樣條件下的if...else,執行速度前者高。

c語言中if else語句與switch語句的區別在**?

6樓:一口沒水的枯井

1 兩者本質的區別是 if-else語句更適合於對區間(範圍)的判斷,而switch語句更適合於對離散專

值的判斷

2 示例屬

判斷65分到85分之間的學生有哪些適合用if-else語句,因為[65,85]是區間

而判斷一個學生的班級是一班、二班還是三班適合用switch語句,因為一班、二班、三班是離散值

3 擴充套件

所有的switch語句都可以用if-else語句來替換(因為if-else語句只需對每個離散值分別做判斷即可),而並不是所有的if-else語句都可以用switch語句來替換(因為區間裡值的個數是無限的並且switch所接受的值只能是整型或列舉型,所以不能用case來一一列舉)。

c語言中執行完switch語句中的default語句後是跳出

先計算switch括號後面表示式的值。並逐個與其後的常量表示式值相比較,當表示式的值與某個常量表示式的值相等時,即執行其後的語句,如若後面有break語句,則直接跳出。如果沒有break語句,然後不再進行判斷,繼續執行後面的case後的語句。直到遇到break語句跳出。如表示式的值與所有case後的...

c語言switch語句中的default放在前面是不是先執行

並不是這樣的。抄 switch語句的格式為 襲 switch expr 習慣上把default寫在最下面,bai但實際上就像du寫在中間的case的順序與zhi結果無關dao一樣,default的位置一樣也和結果無關。當執行switch語句時,無論default位於哪個位置,都會先檢查每個case是...

c語言中for語句和while語句的區別,詳細解釋下,遇到循

for 限定了迴圈次數 while 是條件迴圈,如果while內部條件滿足可以永遠循專 環下去do while也是條件迴圈,只不過條屬件在迴圈之後,每次迴圈之後才判斷條件 為了良好的變成風格 個人建議你儘量使用for迴圈就這樣吧 如果是迴圈一定次數的,for和while都差不多。如果是說要滿足某個條...