1樓:左安坤
選b...按類分應該是一個遞迴函式...結果為:
4.....首先主函式傳遞一個3..然後進行判斷..
由於大於2那麼進行return(fib(n-1)+fib(n-2)); 執行完裡面的運算之後是:return(2+2); ..原因是:
fib(n-1)=fib(3-1)=fib(2)...2=2並且不大於2所以返回一值為2...後者也是一樣..
返回一個2..2+2=4
回答完畢
2樓:匿名使用者
fib(3)=fib(2)+fib(1),這時候,程式會先計算fib(2)和fib(1),而2和1都不大於2,所以fib(2)和fib(1)都返回2,所以結果為4。
如果題目問的是fib(4),那麼fib(4)=fib(3)+fib(2),程式要先計算fib(3)和fib(2),fib(3)又等於fib(2)+fib(1),算出來為4,fib(2)算出來為2,所以結果為6。
3樓:
選a。沒懸賞,不解釋了。
4樓:匿名使用者
b,簡單的遞迴,詳細懶得說了
c語言switch語句求大神解釋一下謝謝
switch k switch中的break作用是跳出switch塊。switch val switch的用法是判斷case後面的表示式和switch後面的表示式是否相匹配,一旦case匹配,就會順序執行後面的程式 而不管後面的case是否匹配,直到遇見break。switch ch switch中...
請用通俗的語言解釋一下c 裡的 棧
一個杯子就是棧 滿足先進後出的就是棧 你問的是c 程式編譯時佔用的記憶體空間 棧空間嗎?其實棧就是一塊記憶體空間,c c 編譯程式時將佔用的記憶體分為以下幾個部分 1 棧區 stack 由編譯器自動分配釋放,存放函式的引數值,區域性變數的值等,其操作方式類似於資料結構的棧。2 堆區 heap 一般是...
c語言兩個答案麻煩幫忙解釋一下謝謝
答案 c項和d項 語句成立就為真 1 不成立就為假 0 解釋 a項 先判斷9是否等於0,9不等於0,為假 即是0 又有一個 非 就是真 即是1 然後是 或 或的意思是先判斷前一表示式是否為真,為真則不需要判斷後一個表示式,反之,前一表示式為假的話就判斷後一表示式。接下來就是 與 3 1為真,所以真個...