民國112年 普通考試 電子工程 計算機概要

第26題

執行下列C 程式,並輸入「10 10 9」,下列何者為程式的輸出?#include <stdio.h>#include<iostream>int main()…

題目

執行下列C 程式,並輸入「10 10 9」,下列何者為程式的輸出?#include <stdio.h>#include<iostream>int main() {int count =0, x=10, next;scanf("%d", &next);while (next == x){count++;scanf("%d", &next);}printf("%d", count);} A. 2 B. 3 D. 9 C. 10

官方答案

  • 答案:A. 2

解析

程式先令 count=0、x=10,接著以 scanf 讀入第一個整數 10;因為 next 等於 x,所以進入 while 迴圈:count 加 1 變成 1,再讀入第二個 10,仍等於 x,count 再加 1 變成 2,並讀入第三個值 9。此時 next 為 9,不等於 10,迴圈結束,printf 印出 count 的值 2,故選 A。scanf 每執行一次只讀一個數字,輸入序列中只有前兩個 10 會讓迴圈本體執行,第三個 9 僅被讀入便離開迴圈,因此不會再多加一次。

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

官方資料

答案以考選部公告之測驗式試題標準答案 PDF 為準。