1,数组(长度有限)
#include<stdio.h>
#include<stdlib.h>
int main()
{
int arr[20] = {1,1};
int i= 0;
for(i=2;i<20;i++)
{
arr[i]=arr[i-1]+arr[i-2];
}
for(i=0;i<20;i++)
{
if(i%5==0)
printf("\n");
printf("%8d",arr[i]);
}
printf("\n");
system("pause");
return 0;
}
2.递归(递归太深,会栈溢出)
int fib(int n)
{
if(n<=2)
retun 1;
else fib(n-1)+fib(n-2);
}
3.循环(效率快)
int fib(int n)
while(n>2)
{
c=a+b;
a=b;
b=c;
n--
}
return c;
}
#include<stdio.h>
#include<stdlib.h>
int main()
{
int arr[20] = {1,1};
int i= 0;
for(i=2;i<20;i++)
{
arr[i]=arr[i-1]+arr[i-2];
}
for(i=0;i<20;i++)
{
if(i%5==0)
printf("\n");
printf("%8d",arr[i]);
}
printf("\n");
system("pause");
return 0;
}
2.递归(递归太深,会栈溢出)
int fib(int n)
{
if(n<=2)
retun 1;
else fib(n-1)+fib(n-2);
}
3.循环(效率快)
int fib(int n)
{
if(n==0)
return 0;
int a=1;b=1;c=a;while(n>2)
{
c=a+b;
a=b;
b=c;
n--
}
return c;
}