C語言學習筆記(4)基礎篇--> if else語句


if

  格式:if (條件)語句;

  1. 條件可以是任何表達式,變量,常量
  2. 判斷條件的真假,真則執行后面的一個分句,假不執行后面的一個分句
  3. 若想控制多行語句,用大括號括起來

  流程圖

  

  如if條件為真執行b++,假則跳過控制下的一行分句。輸出結果a為0是因為在if條件里a被賦值0

eg1:

  比較兩個數的大小,若a>b,則a、b互換,並且輸出,否則a、b原始值輸出,用單分支選擇結構完成

  //a=2,b=3讓ab的值互換

  

  看起來沒有達到我們想要的效果。程序表達的是順序執行的動作,而不是關系,這里的a=b,b=a是依次執行的,結果使得a和b都得到b原來的值

  我們需要一個新的變量

  

else

  

  else子句不能作為語句單獨使用,它必須是if語句的一部分,與if配對使用

  格式:if(條件)語句1;

        else語句2;

  流程圖

    

  判斷條件的真假,為真執行語句1,為假執行else的語句2。else也只控制后面的一個分句,若想控制多個分句,加上大括號。

  

  若看不懂為什么等於6,那么看一下ab的值是什么

  

  自增自減本身具有賦值過程

if else嵌套

  流程圖

    

  嵌套的if

    第一種:

    if(條件1)

     if(條件2)

      if(條件3)

       ...

   第二種

    if(條件1)
      if(條件2)
        ...
      else ...

   第三種

    if(條件1)
      if(條件2)
      else...
    else...

  看一下二、三種

   

    //先判斷第一個if,為假則跳過整個判斷,進入輸出語句。

  //還是上面那個例子,若你想讓第一個if做判斷之后結果為假執行else語句,那么把第一個if和else用縮進做對齊格式,看看這么寫對不對

  

    //出錯了,沒有得要想要的結果。在C語言里,縮進格式不能暗示else的匹配。C是有類型的語言,強調類型,對類型檢查嚴格,不像python,js等不看重類型。

  應該這樣寫

    

    //用大括號括起來,else總是與其上面最近的未配對的if配對。

    //如果if和else的數目不一樣,根據要實現的功能,加大括號來確定配對關系

eg2:試着算算x的值為多少?

 

    

    下面是上面的正規格式代碼

 

 

    

    //這個就能一眼能看懂層次關系   x的值為2

    //外層控制內層(向下一級縮進的),外層不成立時,內層不用做。

 

級聯的if-else if

      if(expression1)

        statement1;

      else if(expression2)

        statement2;

      else

        statement3;

eg3:

  輸入判斷一個學生的成績,大於90(包括)是優秀,大於80(包括)是良好,大於60(包括)是及格,小於60是不及格,用if和else實現

     

注意事項

  1. 錯誤使用條件里的 = 和 ==
  2. 養成在if和else后加上大括號的習慣,控制多條語句要括起來。
  3. if(條件);分號是結束,注意這里該不該寫分號 。
  4. if語句后的條件(表達式)也是真和假的關系,0為假,非零為真。

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM