免費開始練習
高考申論題 112年 [電力工程] 計算機概論

第 二 題

📖 題組:
四、請回答以下問題: C 程式 ```c 01 #include 02 int main() 03 { 04 int i, j, n, order; 05 scanf("%d", &n); 06 order = 0 ; 07 for ( i = 0; i < n-1 ; i ++) 08 for ( j = i ; j < n-1 ; j++) 09 order = order + 1 ; 10 printf("%d ", order); 11 } ``` Python 程式 ```python 01 def aloha(k): 02 if(k >0): 03 rs=k+aloha(k-1) 04 else: 05 rs=0 06 return rs 07 08 n=int(input()) 09 10 11 a=[0 for i in range(n+1)] 12 13 i = 0 14 while i < len(a): 15 a[i]=aloha(i) 16 i = i + 1 17 18 print("theResults:") 19 print(a, end='\n') ```
📝 此題為申論題,共 2 小題

小題 (二)

如下列Python程式,其目的為何?如果執行該程式,並輸入整數6,則輸出的結果是什麼?寫出其詳細步驟。(15分)

思路引導 VIP

這題分為三個部份:回答程式目的、給出輸入6的結果、寫出詳細步驟。先分析程式:函式 aloha(k) 是一個遞迴函式,當 k>0 時返回 k + aloha(k-1),否則返回 0。這顯然是在計算從 1 加到 k 的總和(即前綴和/等差級數和)。主程式中宣告了一個長度為 n+1 的陣列/串列 a(初始全為0)。然後透過 while 迴圈,將 aloha(i) 的結果依序填入 a[i] 中。若輸入 n=6,陣列長度為 7,對應索引 0 到 6,分別存入 0, 1, 3, 6, 10, 15, 21。最後將字串和陣列印出。

🤖
AI 詳解
AI 專屬家教

【考點分析】 本題測驗遞迴函數(Recursive Function)的追蹤分析、Python 串列(List)初始化操作,以及迴圈對資料結構的賦值過程。 【分析與論述】

小題 (一)

若執行下列的C程式,且輸入整數10,則程式輸出的結果是什麼?說明其計算過程。(10分)

思路引導 VIP

這是一題雙層巢狀迴圈(Nested Loop)的執行次數追蹤題。首先,看懂變數與條件:n被輸入為10,所以迴圈條件 n-1 為 9。外層迴圈 i 從 0 跑到 8(i < 9);內層迴圈 ji 跑到 8(j < 9)。因此,對於每個固定的 i,內層迴圈執行的次數為 9 - i。將所有的執行次數加總,就是變數 order 的最終值。計算:9 + 8 + 7 + ... + 1 = 45。

🤖
AI 詳解
AI 專屬家教

【考點分析】 本題測驗程式基礎邏輯、雙層巢狀迴圈(Nested Loops)的執行流程追蹤,以及等差級數總和的計算。 【分析與論述】

🏷️ 相關主題

程式碼追蹤與執行分析
查看更多「[電力工程] 計算機概論」的主題分類考古題