微信扫一扫 分享朋友圈

已有 1671 人浏览分享

[專業技能] 條件敘述 - if

[複製鏈接]

區域版主

Rank: 10Rank: 10Rank: 10

282

威望

1298

金錢

640

A幣
主題
143
帖子
266
精華
0
綜合社群主題發文量
9
電玩社群主題發文量
10
娛樂社群主題發文量
0
技術社群主題發文量
99
閱讀權限
100
註冊時間
2016-5-17
  • TA的每日心情

    2022-4-29 14:36
  • 簽到天數: 5 天

    連續簽到: 1 天

    [LV.2]偶爾看看I

    t9540513 發表於  2021-8-17 17:40:15 | 顯示全部樓層 | 閱讀模式


    一、條件式的寫法

    條件式是我們在程式中做一些判斷時要用的句型,最常用的是比較兩個數值的關係,其語法如下:


    數值一 關係運算元 數值二


    因為條件式本身還不是一行指令,所以後面是不用加分號 ; 的,而上面的關係運算元有:


    < 小於

    > 大於

    == 等於 (注意,是兩個等號)

    <= 小於或等於

    >= 大於或等於

    != 不等於


    下面我們看一些例子:


    變數 a 是否大於 9 : a > 9

    變數 a 和 b 的值是否相等 : a == b

    變數 c 是否小於等於 100 : c <= 9

    變數 d 是否不等於 e : d != e


    另外,有時候我們必須有兩個以上的條件,則可以使用 && (And 且)及 || (Or 或)將之連起來,例如:


    變數 a 大於10 且小於 100: (a>10) && (a<100)

    變數 a 等於b 或等於 c: (a==b) || (a==c)

    最後,如果我們在條件式的前面加上一個驚嘆號 !,則代表否定(Not),例如:

    !( a>9) 和 a<=9 是一樣的。

    二、if 敘述的語法

    接下來我們看到 if 敘述的語法:


    if (條件式) 指令一;


    上面的語法是如果符合該條件,則執行指令一;有時候我們在條件不成立的時候也必需執行一些指令,這時候可以改用下面的語法:


    if (條件式) 指令一;

    else 指令二;


    上面 else 後面的指令二就是當條件不成立時所要執行的指令。而有時候我們要執行的指令並不只一行,這個時候可以用一對大括弧 { } 把要執行的指令包起來,例如:


    if (條件式) {

        指令一;

        指令二;

        指令三;

    }

    else {

        指令四;

        指令五;

        指令六;

    }


    上面的語法,當條件成立時程式會執行指令一至三,而當條件不成立的時候則是執行指令四至六。

    三、印出 A、B 的大小關係

    接下來,我們來寫一個輸入兩個整數 A、B,然後印出兩個變數的大小關係,程式執行的畫面如下(粉紅色代表輸出,淺藍色則是輸入的值):


    A, B => 10 20

    10 < 20

    A, B => 30 20

    30 > 20

    A, B => 20 20

    20 = 20


    整個程式如下:


    #include <stdio.h>
    int main()
    {
    int a, b;
    printf("A, B=> ");
    scanf("%d %d", &a, &b);
    if(a<b) printf("%d<%d\n", a, b);
    if(a>b) printf("%d>%d\n", a, b);
    if(a==b) printf("%d=%d\n", a, b);
    return 0;
    }

    上面的例子,我們用一行 scanf() 同時讀取兩個變數 a、b,只要在 scanf 的第一個參數中,將原先的 "%d" 改成兩個 %d 即為 "%d %d",這就是告訴 scanf 要讀取兩個 %d 也就是整數進來,而當然我們後面也要補上兩個整數變數的位址,讓 scanf 可以把讀入的數值寫到變數裡。而同樣的,在 printf 的第一個參數裡如果有兩個以上的 %d 或其他的 %*,後面也要接著同樣數量的變數,而 printf 會自動把後面的第一個變數的值填到第一個 %d 的位置,第二個變數的值填到第二個 %d 的值置,以此類推,全部的變數的值填入完成後,再將整行印出來。

    三、練習:

    • 輸入一個整數 a,如果 a 是偶數,則印出 "Yes!",否則印出 "No!"。
      10
      Yes!
      23
      No!
      提示:可以使用取餘數符號 %, a % 2 代表 a 除以 2 的餘數,當 a 偶數時,a 除以 2 的餘數為 0 。  
    • 連續輸入兩個整數 a、b,如果 a 是 b 的倍數,則印出 "Yes!",否則則印出 "No!"。
      20 5
      Yes!
      33 12
      No!
      提示:可以使用取餘數符號 %, a % b 代表 a 除以 b 的餘數,當 a 是 b 的倍數時,a 可以被 b 整除,即 a 除以 b 的餘數為 0 。





    共收到 0 A幣
    打賞榜
    暫無
    暫無
    暫無
    暫無
    ----
    暫無
    ----
    暫無
    ----
    暫無
    ----

    本帖子中包含更多資源

    您需要 登錄 才可以下載或查看,沒有帳號?註冊會員

    x
    您需要登錄後才可以回帖 登錄 | 註冊會員

    本版積分規則

    266

    發文

    1298

    金錢

    640

    A幣

    ----------榮譽勳章----------

    熱門推薦
    圖文推薦
    • 聯繫我們

    小黑屋|AICL社群娛樂集團

    GMT+8, 2024-12-4 01:40 , 網路刷新 0.119488 秒 .

    歡迎來到 AICL網路社群

    版權AICL社群所有 2011-2021.

    Total:123 Today:213 Online:322