int F0=0;
int F1=1;
void main()
{
int n=3;
int Fn=0;
Fn=F(n,Fn);
printf("F%d=%d",n,Fn);
}
int F(int n,int Fn)
{
if((n<2)&&(n>-1))//n=0或是1
{
return n;//回傳F0="0"(n=0)或是F1="1"(n=1)
}
else if(n>=2)
{
Fn=F(n-1,Fn)+F(n-2,Fn);
return Fn;
}
else
{
printf("n小於0!");
return -99;
}
}
基本情況 (Base Cases):
遞迴步驟 (Recursive Step):
這個函式將根據給定的 n 值遞迴計算費氏數列,並返回對應的費氏數列值。注意,由於遞迴方法會重複計算相同的子問題,因此對於較大的 n 值,性能可能較差。在實際應用中,可以考慮使用動態規劃或其他優化技術來提高效率。