四、考慮以下兩個互相呼叫(mutually recursive)的 C 語言函式:
int foo(int n) {
if (n <= 1) return 1;
return foo(n - 1) + bar(n - 1) + 2;
}
int bar(int n) {
if (n <= 1) return 1;
return foo(n - 1) + bar(n - 1);
}
請回答下列問題: (每一小題請寫出推導過程,無推導過程不予計分。)
當執行 foo(10)時,一共會呼叫 foo()函式幾次(包含最外層 foo(10)的
這一次呼叫)?(10 分)