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