問題詳情

5 請問下列程式執行後之輸出結果為:#include int bionomial(int, int); int main() { int n=4,m=2; printf("%d", bionomial(n, m)); return 0; } int bionomial(int n, int m) { if(n==0 || n==m) return 1; else return bionomial(n-1, m)+bionomial(n-1, m-1); }
(A) 10
(B) 11
(C) 12
(D) 13

參考答案

答案:B
難度:適中0.493421
統計:A(21),B(75),C(36),D(20),E(0)

用户評論

】評論

 bionomial( 4 , 2 )  =bionomial( 3, 2 ) +bionomial( 3 ,1 )    = bionomial( 2,2 ) +bionomial( 2,1)+ bionomial(2,1) + bionomial( 2 , 0 )    = 1 + 2bionomial( 2 , 1 )+bionomial( 2,0 )=1+2bionomial( 1,1 )+ 2bionomial( 1,0 )+ bionomial( 1 ,0)+ bionomial(1,-1)=1+2+ 3bionomial(1,0 )+ bionomial(1,-1)= 3 + 3bionomial( 0,0 )+3 bionomial( 0 ,-1 )+ bionomial( 0,-1)+ bionomial(0,-2 )= 3+ 3 + 3 + 1 + 1 = 11

BlancJamie】評論

#include int bionomial(int, int); int main() { int n=4,m=2; printf("%d ", bionomial(n, m)); return 0; } int bionomial(int n, int m) {    if(n==0 || n==m) return 1;    else return bionomial(n-1, m)+bionomial(n-1, m-1); } 1.停止條件且回傳1 : n=0或n=m