#include<stdio.h>
int main()
{
int a[50];
a[0]=1;
a[1]=1;
int i;
for(i=2;i<=50;i++)
{
a[i]=a[i-1]+a[i-2];
}
printf("%d",a[50]);
return 0;
}
#include<stdio.h>
int main()
{
int a[50];
a[0]=1;
a[1]=1;
int i;
for(i=2;i<=50;i++)
{
a[i]=a[i-1]+a[i-2];
}
printf("%d",a[50]);
return 0;
}
我算了一下,第五十位斐波那契数列太大了,已经超出了int 类型可以表示的范围了,这个数太大了,换成double都小,int我这好像最多算到第44位数,double最多算到49好像,为啥要算这么大的数呢,没有搞懂,int四个字节32位,加上一个符号位,最多表示2的31次方,这个已经超出了它可以表示的范围了建议重新算一位斐波那契数列,哈哈!