副程式呼叫與遞迴 08
出自 陳富國維基館
下列片段程式執行後,其輸出結果為何? 並會出呼叫圖(此題六分)
void fn(int n, int *m)
{ int a, b;
if (n>=3)
{ fn(n-1, &a);
fn(n-2, &b);
*m = b + 2 * a;
}
else if (n == 2)
*m = 1;
else if (n == 1)
*m = 0;
}
int main(void)
{ int a=5, b;
fn(a, &b);
cout<<b;
}
解答
Ans: 12
解說:
類似題型
題目
解說:
| 程式觀念考題 | |||||
|---|---|---|---|---|---|
| 基本程式語言 | 決策程式語法 | 迴圈/重複敘述 | 副程式呼叫與遞迴 | 物件導向-類別與物件 | 其他 |
|
|
06 . 07 . 08 . 09 . 10 11 . 12 . 13 . 14 . 15 |
06 . 07 . 08 . 09 . 10 11 . 12 . 13 . 14 . 15 |
06 . 07 . 08 . 09 . 10 11 . 12 . 13 . 14 . 15 |
06 . 07 . 08 . 09 . 10 11 . 12 . 13 . 14 . 15 |
06 . 07 . 08 . 09 . 10 11 . 12 . 13 . 14 . 15 |