fork download
  1. #include <stdio.h>
  2. int fib1(int n)
  3. {
  4. int f1=0,f2=1,f,i;
  5.  
  6. for(i=0;i<n-1;i++)
  7. {
  8. f=f1+f2;
  9. f1=f2;
  10. f2=f;
  11. }
  12. return f2;
  13. }
  14.  
  15. int fib2(int n)
  16. {
  17. int f[100],i;
  18.  
  19. f[0]=0;
  20. f[1]=1;
  21. for(i=2;i<=n;i++)
  22. f[i]=f[i-1]+f[i-2];
  23.  
  24. return f[n];
  25. }
  26.  
  27. int fib3(int n)
  28. {
  29. if(n==0)
  30. return 0;
  31. else if(n==1)
  32. return 1;
  33. else
  34. return fib3(n-1)+fib3(n-2);
  35. }
  36.  
  37.  
  38. int main(void) {
  39.  
  40. int n;
  41. scanf("%d",&n);
  42. printf("1:%d\n",fib1(n));
  43. printf("2:%d\n",fib2(n));
  44. printf("3:%d\n",fib3(n));
  45. return 0;
  46. }
  47.  
Success #stdin #stdout 0s 5320KB
stdin
7
stdout
1:13
2:13
3:13