多個if語句和多個if else語句的區別

2021-09-05 17:51:07 字數 3802 閱讀 3454

1樓:金色潛鳥

if(條件1) if(條件2) if(條件3).... if(條件n) ;

當 條件1,條件2,直到 條件n, 當所有的條件都為真,才執行

----

if(條件1) 語句1;else if(條件2)語句2; if(條件3) 語句3;.... if(條件n) 語句n;

當 條件1,條件2,直到 條件n, 當所有的條件都為假,才執行 語句n.

條件1 為真,執行 語句1,不管其它的條件,不執行其它的語句。

條件1 為假,條件2 為真,執行 語句2,不管其餘。

條件1 為假,條件2 為假,條件3 為真,執行 語句3 ,不管其餘。。。。

2樓:靠名真tm難起

if為如果,就是如果這種情況,如果那種情況。

else if 不是上一個條件的前提下,如果是這個條件。

if無論是否滿足條件都會向下執行,知道程式結束,else if 滿足一個條件就會停止執行。

由於if都會執行一遍,則可能會同一個需要判斷的事件,會進入2個if語句中,出現錯誤,而else if就不會發生這樣的事情。

多個if語句和else if有什麼區別?

3樓:靠名真tm難起

if為如果,就是如果這種情況,如果那種情況。

else if 不是上一個條件的前提下,如果是這個條件。

if無論是否滿足條件都會向下執行,知道程式結束,else if 滿足一個條件就會停止執行。

由於if都會執行一遍,則可能會同一個需要判斷的事件,會進入2個if語句中,出現錯誤,而else if就不會發生這樣的事情。

4樓:匿名使用者

多個if是所有的if都會進行判斷

if else if是只要有滿足條件的,就不再對之後的else if進行判斷

比如a = 2;

if(a==1) c=1;

if(a==2) c=2;

if(a%2==0) c=3;

最終結果c=3

a=2;

if(a==1) c=1;

else if(a==2) c=2;

else if(a%2==0) c=3;

最終結果c=2

5樓:不再聯絡

1,從字面上理解if為如果,就是如果這種情況,如果那種情況。

2,else if 不是上一個條件的前提下,如果是這個條件。

3,區別1:if無論是否滿足條件都會向下執行,知道程式結束,else if 滿足一個條件就會停止執行。

4,區別2:由於if都會執行一遍,則可能會同一個需要判斷的事件,會進入2個if語句中,出現錯誤,而else if就不會發生這樣的事情。

6樓:匿名使用者

區別很大

if(a)

b;if(c)

d;兩個if都會進入判斷。

if(a)

b;else if(c)

d;//當滿足a的時候就不進入到c的判斷,不滿足a時,才會去判斷c望採納。

7樓:丁文博

你好,多個if語句時及時前一個if為真,後面的if也要繼續判斷,

如果用else if 則只有前者為假的時候它的if 才接著判斷。

8樓:可愛的黃蝴蝶

我感覺最主要的是 分支的問題吧

if else 就是多選一 意思是有多條路,但你只能選一個//由於這個性質,經常用來寫條件是互斥的判斷

而if if呢 也是多條路,但並不是多選一的,而是可以同時選的 //由於這個性質便經常用來寫那些條件不互斥的

舉個例子 就拿判斷一個數是不是偶數 奇數 和 素數偶數 和 奇數 是互斥的

但素數即可能是偶數也是奇數 那就要這樣寫了if(偶數)

是偶數else

是奇數if(素數)

是素數對吧

9樓:州武王

多個if可以保證每個考慮到的情況都執行;

但是else if如果有多個,那麼當其中一個執行後,其他的else if 會跳過。

所以,當你是做全情況分類執行時,需要注意,else if可能導致的某一種情況丟失。(剛剛知道,調了兩個小時才明白,祝大家少走彎路。)

c語言中if-else-if與多個順序if有什麼區別???

10樓:匿名使用者

多個順序if語句是多個語句塊(block)可能是很多混合邏輯判斷

一個if-else-if 是一個快(block)是一組邏輯

11樓:汐日南莘

if — else if是當來判斷到有一個條件成自立時,則後面的else if條件語句就不判斷了,這樣就節省了程式執行的時間

多個if語句是所有if條件語句都要判斷,即使有滿足條件的if語句後面的if條件語句也要判斷

多個if條件之間是並列關係

12樓:匿名使用者

沒什麼區別啊?

關鍵是要讓程式的思路是順序向下發展的

13樓:匿名使用者

真想學!不過我總是看不懂!都是自學的?

我咋就看不懂

多個if else if語句的用法?

14樓:墨陌沫默漠末

在else語句裡繼續巢狀if語句即可。

在同一個 if 結構中可以有多個 elseif 語句。

第一個表示式值為 true 的 elseif 語句(如果有的話)將會執行。在 php 中,也可以寫成“else if”(兩個單詞),它和“elseif”(一個單詞)的行為完全一樣。

句法分析的含義有少許區別(如果你熟悉 c 語言的話,這是同樣的行為),但是底線是兩者會產生完全一樣的行為。

elseif 的語句僅在之前的 if 或 elseif 的表示式值為 false,而當前的 elseif 表示式值為 true 時執行。

if語句的語法如下所示(if和else是c#的關鍵字):

if(booleanexpression)

statement-1;

else

statement-2;

如果booleanexpression(布林表示式)求值為true,就執行statement-1;否則執行statement-2。else關鍵字和後續的statement-2是可選的。

如果沒有else子句,而且booleanexpression求值為false,那麼什麼也不會發生,程式繼續執行if語句之後的**。注意,布林表示式必須放在圓括號中,否則無法編譯。

15樓:水果山獼猴桃

完全語法錯誤,無論是何種語言,else都是跟與其最近的一個沒有配套的if相配

第一個else if跟=0配套,但是第二個是跟=2配套,同樣第三個是跟=3的配套,按照你的寫法,這裡不是一個if..else..if結構,而是多個if..else..if巢狀

正確的寫法應該是:

if rvotp=0 then

else if rvotp=2 then

else if ......

end if

16樓:go陌小潔

if(表示式一)

//符合表示式執行的**

else if(表示式二)

//符合表示式執行的**

else if(表示式三)

//符合表示式執行的**

……else

//符合表示式執行的**

#include

int main(void)

MATLAB中假如while語句中有多個條件時應該怎麼寫

試試邏輯陣列 s a i,1 a i 2 a i,1 a,a i,2 a,a i,1 b,a i,2 b while sum s 0 迴圈體 end 可以用邏輯表示式,但是樓主的寫法錯誤。matlab裡的或關係是一條豎線,不是兩條。呵呵。我認為按照提問者的程式設計寫法也是可以的。也可以表示或。希望樓...

switch語句比起ifelse語句有哪些優勢

在大多數情況下,switch的效能不會比ifelse低。在某些特定情況下,編譯器能對switch進行優化。比如說 1.不按順序比較,而是構造一個二分查詢樹 binarydecisiontree 這樣子比較的平均次數就會下降。2.可以做個跳轉表 jumptable 這樣子就不許要任何比較了。switc...

vb有多個frame,每個frame有多個optionbut

把你所有的optionbutton複製成控制元件組。然後在 option1 mouseup 事件中新增以下 for i 0 to option1.uboundoption1 i value falseif i index then option1 i value true next 把所有的opti...