1. 程式人生 > >多個if和一個ifelse的區別

多個if和一個ifelse的區別

scanf 我們 lse 的區別 成績 輸入 學生 解決 多個

一個程序的要求如下,輸入一個學生的數學成績,如果大於等於60,那麽就輸出good,如果小於60那麽輸出not good

int a

scanf_s("%d",&a)

if(a>=60)

{

  printf("good");

}

if(a<60)

{

  printf("not good");

}

邏輯上是沒有問題的,是可以解決問題的,但是實際運行起來的流程是這樣的。如果用戶輸入90,那麽程序會先

判斷a是否大於等於60,恩,條件成立輸出good,然後又會判斷a是否小於60,這裏不應該多這一次判斷的。這個程序的判斷條件比較簡單,如果是很復雜的判斷條件,那麽程序的性能就會受到影響。

我們要的效果是你判斷成績大於60成立就不要再判斷是否小於60了,我們可以用if else來實現。

if(a>=60)

{

  printf("good");

}else

{

  printf("not good");

}

if else的只對a判斷一次,條件成立則打印good 不成立打印not good

多個if和一個ifelse的區別