next up previous contents
Next: 迴圈 Up: 判斷 Previous: nested switch statements   Contents

實機練習題

  1. 共同要求:
    1. 在家目錄下建立 zzz 目錄。
    2. 切換工作目錄到 zzz,所有練習皆存在此目錄。
    3. 題目沒要求的,不要多做,除題目輸出範例要求的空白外,不要多加任何空白或空白行。
  2. 撰寫 C 語言程式
    1. 程式 choice1.c 以 scanf 從鍵盤輸入兩個整數 a 及 b,中間以空白隔開,判斷 a 是偶數而且 b 是奇數時,輸出 a+b 的結果,否則印出 a-b 的結果。例如:a=4, b=3,輸出,輸出「4 + 3 = 7」,印出結束要換行,編譯成可執行檔 choice1。
    2. 程式 choice2.c 以 scanf 從鍵盤輸入兩個整數 a 及 b,中間以空白隔開,判斷 a 是奇數或 b 是偶數時,輸出 a b binary XOR 的結果,否則印出 a b binary AND 的結果。例如:a=4, b=3,輸出「4 ^ 3 = 7」,印出結束要換行,編譯成可執行檔 choice2。
    3. 程式 choice3.c 以 scanf 從鍵盤輸入月份,判斷月份 3-5 月為 Spring, 6-8 月 Summer,9-11 月 Autumn,12-2 月 Winter,其他數字不是月份。例如:輸入 11,輸出「11 : Winter」,輸入 13,輸出「13 : NOT the month」,印出結束要換行,編譯成可執行檔 choice3。
    4. 程式 choice4.c 將 choice1.c 的 if 判斷式改成簡易的 ?: 運算子,編譯成可執行檔 choice4。
    5. 程式 choice5.c 將 choice2.c 的 if 判斷式改成簡易的 ?: 運算子,編譯成可執行檔 choice5。
    6. 程式 choice6.c 將 choice3.c 的 if 判斷式改成 switch 判斷式,編譯成可執行檔 choice6。 提示:四季用 1, 2, 3, 4 代碼表示,以這代碼做為 switch 判斷變數,月份除以 3 取整數取得代碼,1, 2 月個別處理。
    7. 程式 choice7.c 以 scanf 從鍵盤輸入兩個整數 a 及 b,中間以空白隔開,設定 label STARTADD 配合 goto 敍述,累加 a 到 b。例如:a=3, b=6,輸出,輸出「3+4+5+6=18」,印出結束要換行,編譯成可執行檔 choice7。
    8. 承上題 choice7.c,程式 choice8.c 判斷 a 大於 b 時,兩個數字對換,編譯成可執行檔 choice8。


De-Yu Wang 2019-08-14