Board logo

標題: APCS 觀念題 10503 - 3 [打印本頁]

作者: 李泳霖    時間: 2021-12-3 15:27     標題: APCS 觀念題 10503 - 3

給定一整數陣列 a[0]、a[1]、…、a[99]且 a[k]=3k+1,
以 value=100 呼叫以下兩函式,
假設函式 f1 及 f2 之 while 迴圈主體分別執行 n1 與 n2 次
(i.e,  計算 if 敘述執行次數,不包含 else if 敘述),
請問 n1 與 n2 之值為何?
註: (low + high)/2 只取整數部分
  1. int f1(int a[], int value)
  2. {
  3.      int r_value = -1;
  4.      int i = 0;
  5.      while (i < 100)
  6.     {
  7.           if (a[i] == value)
  8.           {
  9.                r_value = i; break;
  10.           }
  11.           i = i + 1;
  12.      }
  13.      return r_value;
  14. }
複製代碼
  1. int f2(int a[], int value)
  2. {
  3.      int r_value = -1;
  4.      int low = 0, high = 99; int mid;
  5.      while (low <= high)
  6.     {
  7.            mid = (low + high)/2;
  8.            if (a[mid] == value)
  9.            {
  10.                 r_value = mid; break;
  11.            }
  12.            else if (a[mid] < value)
  13.            {
  14.                low = mid + 1;
  15.            }
  16.            else
  17.            {
  18.                high = mid - 1;
  19.            }
  20.     }
  21.      return r_value;
  22. }
複製代碼
(A) n1=33, n2=4
(B) n1=33, n2=5
(C) n1=34, n2=4
(D) n1=34, n2=5
本帖隱藏的內容需要回復才可以瀏覽

作者: 張淯祺    時間: 2021-12-10 20:35

此帖僅作者可見
作者: 郭哲維    時間: 2021-12-11 11:16

此帖僅作者可見
作者: 李柏穎    時間: 2021-12-11 11:17

此帖僅作者可見
作者: 王銘鴻    時間: 2021-12-11 11:18

此帖僅作者可見
作者: 林羿丞    時間: 2021-12-11 11:18

此帖僅作者可見
作者: 陳羿安    時間: 2021-12-11 11:19

此帖僅作者可見
作者: 王翎璇    時間: 2021-12-11 11:20

此帖僅作者可見
作者: 黃柏叡    時間: 2021-12-11 11:22

此帖僅作者可見
作者: 龔品誠    時間: 2021-12-11 11:23

此帖僅作者可見
作者: 曾宥程    時間: 2021-12-11 11:25

此帖僅作者可見
作者: 李穎俊    時間: 2021-12-11 11:25

此帖僅作者可見




歡迎光臨 種子論壇 | 高雄市資訊培育協會學員討論區 (http://istak.org.tw/seed/) Powered by Discuz! 7.2