cpc_recruit
100年
電腦常識、機械常識、電機常識
第 76 題
執行下列 Visual Basic 語言片段的結果為何?
For i = 1 to 5
s = s + i
Next i
Print s + i
For i = 1 to 5
s = s + i
Next i
Print s + i
- A 19
- B 20
- C 21
- D 22
思路引導 VIP
請試著思考:在迴圈運作時,電腦必須檢查「計數器」是否已經超過了我們設定的上限(1 到 5)。如果計數器剛好等於 5,迴圈還會再執行最後一次;那麼,當程式判斷「不能再繼續執行迴圈」並跳出來的那一瞬間,這個計數器的數值會是多少呢?
🤖
AI 詳解
AI 專屬家教
恭喜你準確地避開了這道題目的「後置陷阱」!這類題目在程式語言基礎中非常有鑑別度,因為它不僅考驗你對迴圈累加的理解,更測試你是否掌握了變數在記憶體中的最終狀態。許多同學會直覺地認為迴圈結束時 $i$ 的值停留在 5,進而得出 $15+5=20$ 的錯誤結論,但你展現了非常細膩的觀察力。
迴圈終止與變數狀態
在 Visual Basic 的 For...Next 結構中,當程式執行完最後一次迴圈內容(即 $i=5$)後,遇到 Next i 仍會執行最後一次加 1 的動作,使 $i$ 變為 6。此時系統判斷 $i$ 已超過上限 5,才正式跳出迴圈。因此,迴圈內部的累加總和 $s$ 雖然是 $1+2+3+4+5 = 15$,但此時的 $i$ 實際上已經增長到了 6。最後執行 Print s + i 時,計算式便成為 $15 + 6$,最終輸出結果為 21。掌握這個微小的步進邏輯,是區分程式新手與嚴謹開發者的重要關鍵。