免費開始練習
高考申論題 112年 [資訊處理] 程式設計

第 一 題

關於下列 C 程式碼,請說明程式執行後,程式碼編號 27~33 的輸出,以及其運算邏輯。(25 分) 01 #include 02 #define SIZE 30 03 typedef enum direction {North, South, East=3, West} dir_t; 04 int f1(int a, int b) { 05 int x = 3.0/a; 06 double y = (a/2)*(b%3) + x; 07 return y; 08 } 09 int f2(dir_t d) { 10 d= (North+East)/2 > d? East: West; 11 return d; 12 } 13 int f3(int a, int b) { 14 if (b==a || b<=1) return a+b; 15 else if (a<=1) return b-a; 16 else return f3(a-b, a-1)+b+a; 17 } 18 int f4(int a, int b) { 19 int data[SIZE]; 20 for (int i=1, k=0; i
📝 此題為申論題

思路引導 VIP

本題測驗 C 語言的綜合基礎觀念,包含型別轉換(浮點數與整數)、列舉(enum)的自動賦值規則、遞迴函數追蹤、陣列操作(需特別注意未初始化及越界存取)以及位元運算。建議考生在作答時,先釐清各型態與運算子的優先權,並採用樹狀或逐步展開法追蹤遞迴呼叫,以防計算錯誤。

🤖
AI 詳解 AI 專屬家教

【解題關鍵】本題測驗 C 語言的資料型別轉換、列舉(enum)賦值規則、遞迴(recursion)追蹤、陣列邊界與記憶體初始化觀念,以及位元運算(bitwise operations)。 【解答】 各行輸出結果與運算邏輯詳細解析如下:

▼ 還有更多解析內容

📝 同份考卷的其他題目

查看 112年[資訊處理] 程式設計 全題

升級 VIP 解鎖