⑴ c 言中fib()到底是個什麼函數怎樣使用
fib他是寫了一個函數--FIBONACCI函數
它是一個遞歸函數
不懂可以去網路上搜一下
這個你可以看懂吧?
Fib(int n)
{
if(n<=2)
return 1;
else
return Fib(n-1)+Fib(n-2);
}
你取 n=4,則return Fib(3)+Fib(2) --> Fib(3)=Fib(2)+Fib(1) --> Fib(2)=1 Fib(1)=1
--> Fib(3) = 2 所以n=4時,返回的值就是 3,它就是一種遞歸的演算法,老師也是教你們學習遞歸用的,斐波那契函數。
⑵ fib(int n)在c語言中什麼意思
fib(int n)嚴格來說根本就是錯誤的或不標準的東西,應該寫成int fib(int n),它表示一個函數,函數返回整數值,接收一個整形參數。
⑶ 用C語言編程:編寫一函數求Fibnacci數列中fib(n)的值
int fib(n)
{
if(n<1)return 0;
if(n==1 || n == 2)return 1;
return fib(n-1) + fib(n-2);
}
⑷ 斐波那契數列的編程
#include<iostream.h>
int
fib(int
n)
{
if((n==1)||(n==2))
return
1;
return
fib(n-1)+fib(n-2);
}
void
main()
{
int
i,b,n;
cout<<"請輸入n的值"<<endl;
cin>>n;
for(i=1;i<=n;i++)
{
b=fib(i);
cout<<b<<"\t";
if(i%5==0)
cout<<'\n';
}
}
樓上那位錯了,人家要的是數列,不是一個數,呵呵,不然怎麼會有「一行輸出5個」的要求?
⑸ javascript fib( )函數到底是什麼意思,怎麼得出這個答案的
fib(1)的值你知道吧?答案是1,因為>2為假,直接返回結果
fib(2)的值你知道吧?答案還是1
fib(3)的值呢,這個就是fib(1)+fib(2),所以結果就是2
fib(4)=3
......
以此類推可以得到答案。
⑹ c語言中fib(1) ,fib(2) ,fin(3)分別等於幾呀為什麼求詳解
fib(0)=0,fib(1)=1 ,fib(2)=1 ,fin(3)=2,Feibonacci通項公式fib(n)=fib(n-1)+fib(n-2),n>=2
⑺ fib()問題,下面的哪位大神給解個惑
函數是if判斷語句,根據函數fib( )的定義,根據n的取值可以分為4種情況:
第一種 n=0,那麼函數返回33;
第二種 n=1,那麼函數返回66;
第三種 n>1,那麼函數返回fib(n-1)+fib(n-2)+fib(n-3),就是繼續返回函數分別計算;
第四種 其他情況,即n<0的情況,那麼函數返回99。
根據提問,第三種情況比較特殊,假如說n=2的話,那麼函數返回fib(1)+fib(0)+fib(-1),正好是所有情況全部覆蓋了。
所以答案是A,1。
⑻ C語言編程問題
long fib(int g)是個遞歸函數,
主函數調用k=fib(7);此時g是7,不滿足switch分支結構的執行條件,就執行了return(fib(g-1)+fib(g-2));語句也即return(fib(6)+fib(5));
由於此時fib(6)和fib(5)此時還不是確切的數值,所以會再次調用fib()函數,執行fib(6),由於此時g=6,仍不滿足switch分支結構的執行條件,就執行了return(fib(g-1)+fib(g-2));語句也即return(fib(5)+fib(4));由於此時fib(5)和fib(4)此時還不是確切的數值,所以會再次調用fib()函數,以此類推,直到調用fib(2)、fib(1)時返回1;或調用fib(0)時返回0;此時函數會將嵌套調用函數返回的數值相加,得到最終結果:13