民國114年 地方四等 電子工程 計算機概要
第29題
假設a、b 皆為正整數,則以下函數的回傳值,應為下列何者?int A(int a, int b){int c = 0;int i, j;for(i = a; i…
題目
假設a、b 皆為正整數,則以下函數的回傳值,應為下列何者?int A(int a, int b){int c = 0;int i, j;for(i = a; i >= 0; i--)for (j = b; j > 0; j--)c++;return c;} A. a*b B. a!*b! C. a*(b-1) D. (a+1)*b
官方答案
- 答案:D. (a+1)*b
解析
外層迴圈 i 由 a 遞減至 0(含 0),共執行 a+1 次;內層迴圈 j 由 b 遞減至 1(條件 j>0),共執行 b 次。內層每執行一次就把 c 加 1,故 c 的總次數為 (a+1)×b,函數回傳 (a+1)*b。A 漏算 i=0 的那一列;C 誤認 j 只跑 b-1 次;B 把計數誤為階乘相乘,均與雙層迴圈相乘計數的原理不符。故選 D。
AI 參考解析(推得答案已與官方答案比對一致),非官方公告內容,僅供備考參考。
官方資料
答案以考選部公告之測驗式試題標準答案 PDF 為準。