民國114年 第2梯次 電腦軟體設計(JAVA)乙級 學科

第53題

有關C++語言控制方面的敘述,下列何者有誤?

題目

有關C++語言控制方面的敘述,下列何者有誤?

  1. (1) switch 敘述中的每一個case 都必須以 break 敘述結束
  2. (2) 邏輯運算元 && 可在計算第一個運算子為 false 時, 就可跳過另一運算子, 就確定整個運算式為 false
  3. (3) 在重複結構中執行到 continue 敘述, 程式流程立刻跳離剩下的部分, 開始下一次迴圈
  4. (4) 在重複結構中執行到 break 敘述 ,程式流程立刻跳出此結構

官方答案

(1) switch 敘述中的每一個case 都必須以 break 敘述結束

解析

本題問「敘述有誤」者。選項 1 說 switch 中每個 case 都「必須」以 break 結束,這是錯誤的。C/C++ 的 switch 允許 case 之間「穿透(fall-through)」,若省略 break,控制權會依序執行下一個 case 的敘述,break 並非強制語法。因此選項 1 本身敘述有誤,為本題答案。其餘敘述均正確:選項 2 的 && 具有「捷徑評估(short-circuit)」特性,左運算元為 false 即不必計算右運算元,整體必為 false;選項 3 的 continue 會跳過迴圈剩餘部分、直接進入下一次迭代;選項 4 的 break 則會立即跳出該重複結構。故唯一錯誤的是選項 1。

AI 參考解析(推得答案已與官方答案比對一致),非官方公告內容,僅供備考參考。

官方資料