fork download
  1. #include <stdio.h>//第1講演習 4-1
  2.  
  3. int fibo(int n){
  4. int a;
  5. printf("関数fibo(%d)が開始\n",n);
  6. if(n<=1){
  7. printf("関数fibo(%d)が終了、戻り値=1\n",n);
  8. return 1;
  9. }
  10. else{
  11. a=fibo(n-1)+fibo(n-2);
  12. printf("関数fibo(%d)が終了、戻り値=%d\n",n,a);
  13. return a;
  14. }
  15. }
  16. int main() {
  17. int x,n;
  18. n=7;
  19. x=fibo(n);
  20. printf("fibo(%d)=%d\n",n,x);
  21. return 0;
  22. }
Success #stdin #stdout 0s 5320KB
stdin
7
stdout
関数fibo(7)が開始
関数fibo(6)が開始
関数fibo(5)が開始
関数fibo(4)が開始
関数fibo(3)が開始
関数fibo(2)が開始
関数fibo(1)が開始
関数fibo(1)が終了、戻り値=1
関数fibo(0)が開始
関数fibo(0)が終了、戻り値=1
関数fibo(2)が終了、戻り値=2
関数fibo(1)が開始
関数fibo(1)が終了、戻り値=1
関数fibo(3)が終了、戻り値=3
関数fibo(2)が開始
関数fibo(1)が開始
関数fibo(1)が終了、戻り値=1
関数fibo(0)が開始
関数fibo(0)が終了、戻り値=1
関数fibo(2)が終了、戻り値=2
関数fibo(4)が終了、戻り値=5
関数fibo(3)が開始
関数fibo(2)が開始
関数fibo(1)が開始
関数fibo(1)が終了、戻り値=1
関数fibo(0)が開始
関数fibo(0)が終了、戻り値=1
関数fibo(2)が終了、戻り値=2
関数fibo(1)が開始
関数fibo(1)が終了、戻り値=1
関数fibo(3)が終了、戻り値=3
関数fibo(5)が終了、戻り値=8
関数fibo(4)が開始
関数fibo(3)が開始
関数fibo(2)が開始
関数fibo(1)が開始
関数fibo(1)が終了、戻り値=1
関数fibo(0)が開始
関数fibo(0)が終了、戻り値=1
関数fibo(2)が終了、戻り値=2
関数fibo(1)が開始
関数fibo(1)が終了、戻り値=1
関数fibo(3)が終了、戻り値=3
関数fibo(2)が開始
関数fibo(1)が開始
関数fibo(1)が終了、戻り値=1
関数fibo(0)が開始
関数fibo(0)が終了、戻り値=1
関数fibo(2)が終了、戻り値=2
関数fibo(4)が終了、戻り値=5
関数fibo(6)が終了、戻り値=13
関数fibo(5)が開始
関数fibo(4)が開始
関数fibo(3)が開始
関数fibo(2)が開始
関数fibo(1)が開始
関数fibo(1)が終了、戻り値=1
関数fibo(0)が開始
関数fibo(0)が終了、戻り値=1
関数fibo(2)が終了、戻り値=2
関数fibo(1)が開始
関数fibo(1)が終了、戻り値=1
関数fibo(3)が終了、戻り値=3
関数fibo(2)が開始
関数fibo(1)が開始
関数fibo(1)が終了、戻り値=1
関数fibo(0)が開始
関数fibo(0)が終了、戻り値=1
関数fibo(2)が終了、戻り値=2
関数fibo(4)が終了、戻り値=5
関数fibo(3)が開始
関数fibo(2)が開始
関数fibo(1)が開始
関数fibo(1)が終了、戻り値=1
関数fibo(0)が開始
関数fibo(0)が終了、戻り値=1
関数fibo(2)が終了、戻り値=2
関数fibo(1)が開始
関数fibo(1)が終了、戻り値=1
関数fibo(3)が終了、戻り値=3
関数fibo(5)が終了、戻り値=8
関数fibo(7)が終了、戻り値=21
fibo(7)=21