當前位置:首頁 » 編程語言 » 斐波拉契數列c語言

斐波拉契數列c語言

發布時間: 2022-05-06 11:36:44

『壹』 c語言斐波那契數列

利用斐波拉其數列計算公式計算:
(1/√5)*{[(1+√5)/2]^n - [(1-√5)/2]^n}

『貳』 斐波那契數列 c語言


#include <stdio.h>

int fn(int a){

if (a==1) return 1;

else if (a==2) return 2;

else return fn(a-1)+fn(a-2);

}


void main (){

for (int i=1;i<=50;i++)

printf("%d::%d ",i,fn(i));

}

『叄』 在c語言中,如何利用數組求斐波那契數列的前20項

在c語言中,以vc為例利用數組求斐波那契數列的前20項的具體步驟如下:

1、首先,打開vc;

『肆』 C語言編程:寫出斐波那契數列的前40個數

#include <stdio.h>

int main()

{

int f1 = 1;

int f2 = 1;

int f3,i;

printf("%d %d ",f1,f2);

for(i = 1; i <= 38; i++)

{

f3 = f1 + f2;

printf("%d ",f3);

f1= f2;

f2= f3;

}

printf(" ");

return 0;

}

(4)斐波拉契數列c語言擴展閱讀:

在數學上,斐波那契數列以如下被以遞推的方法定義:F(1)=1,F(2)=1, F(n)=F(n-1)+F(n-2)(n>=3,n∈N*)

遞推公式

斐波那契數列:1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, ...

如果設F(n)為該數列的第n項(n∈N*),那麼這句話可以寫成如下形式::F(n)=F(n-1)+F(n-2)

顯然這是一個線性遞推數列。

平方與前後項

從第二項開始,每個偶數項的平方都比前後兩項之積少1,每個奇數項的平方都比前後兩項之積多1。

『伍』 斐波那契數列:c語言

你公式計算的公式不對 如果按照這個公式計算,只有0 和1的時候是一樣的 剩下的都不一樣
程序這樣做
#include <stdio.h>
#include <math.h>
int f1(int i)
{
if(i == 0) return 0;
if(i == 1) return 1;
return f1(i - 1) + f1(i - 2);
}

int f2(int i)
{
#if 1
int ret;
double c;

c = (1.0+sqrt(5)/2.0);
ret =(int)(pow(c,i)/sqrt(5)+0.5);
#else
int ret;
double c, c1;

c = (1.0+sqrt(5))/2.0;
c1 = (1.0-sqrt(5))/2.0;
ret =(int)((pow(c,i) - pow(c1, i))/sqrt(5)+0.5);

#endif
return ret;
}

main()
{
int i = 0;
int r1, r2;
while(1)
{
r1 = f1(i);
r2 = f2(i);
if(r1 != r2)
printf("diff at %d, %d %d\n", i, r1, r2);
i ++;
}
}

在f2裡面有一個#if 1 這時是用你的公式
改成#if 0後用的是正確的公式

『陸』 C語言 斐波那契數列怎麼寫

#include<stdio.h>
intfei(intindex)//數組實現
{
if(index<1)
{
return-1;
}
if(index<3)
{
return1;
}
int*a=newint[index];
a[0]=a[1]=1;
for(inti=2;i<index;i++)
a[i]=a[i-1]+a[i-2];
intm=a[index-1];
deletea;//釋放內存空間
returnm;
}
inttou(inti)//取第一位
{
while(i>9)
i/=10;
returni;
}
intmain()
{
intn,a[100];
scanf("%d",&n);
for(inti=0;i<n;i++)
scanf("%d",&a[i]);
for(inti=0;i<n;i++)
{
if(fei(a[i])>9)
printf("%d%d ",tou(fei(a[i])),fei(a[i])%10);
else
printf("%d ",fei(a[i]));
}
}

『柒』 C語言 斐波那契數列怎麼寫

#include<stdio.h>

int main(void)

{ int i,n,a[50]={1,1};

scanf("%d",&n);

for(i=2; i<n; i++)

a[i]=a[i-1]+a[i-2];

for(i=0;i<n;i++)

printf("%d ",a[i]);

return 0;

}

『捌』 C語言 數組 斐波那契數列

#include "stdafx.h" //這是 VS 預編譯頭。其他系統刪除。
#include<stdio.h>
#include<stdlib.h> //使用 system("pause"); 時需要。
//MS 否決了 scanf 等函數,加上下句,仍然可用。其他系統刪除。
#pragma warning(disable:4996)

//問題:斐波那契數列的定義為: F1=1,F2=1,F(n)=F(n-2)+F(n-1)
int Fibonacci(int n)
{
if (n == 1)
return 1;
if (n == 2)
return 1;
return Fibonacci(n - 2, f1, f2) + Fibonacci(n - 1, f1, f2);
}

// VS 標准主函數聲明,其他系統請根據系統更改。
int _tmain(int argc, _TCHAR* argv[])
{
int i, k, d[40];
scanf("%d", &k);
for (i = 0; i < k; i++)
{
scanf("%d", &d[i]);
}
for (i = 0; i < k; i++)
{
printf("%d\n", Fibonacci(d[i]));
}

system("pause"); //防止窗口一閃而過
return 0;
}

『玖』 用C語言程序計算斐波那契數列

main()
{
int a=0;
int b=1;
int c,i;
int s=a+b;
for(i=3;i<=21;i++)
{
c=a+b;
s=s+c;
a=b;
b=c;
}
printf("%d",s);
}

『拾』 求用C語言表達斐波那契數列

#include <stdio.h>

main( ){

long f1,f2,f;

int i,n;

scanf("%d",&n);

f1=f2=1;

if(n<=2)

f=1;

else

for(i=3;i<=n;i++){

f=f1+f2;
f1=f2;
f2=f;
}
printf("%ld ",f);
}

熱點內容
手機淘寶緩存視頻 發布:2024-05-21 05:21:09 瀏覽:347
4款配置怎麼選 發布:2024-05-21 05:20:03 瀏覽:585
python服務重啟 發布:2024-05-21 05:07:51 瀏覽:667
內部存儲空間怎麼清除 發布:2024-05-21 04:04:55 瀏覽:498
bilibili不能緩存 發布:2024-05-21 03:31:14 瀏覽:617
解壓剃發 發布:2024-05-21 03:16:27 瀏覽:641
伺服器怎麼連接到電腦顯示屏上 發布:2024-05-21 02:38:21 瀏覽:286
織夢安裝資料庫連接失敗 發布:2024-05-21 02:37:45 瀏覽:259
python編程入門經典pdf 發布:2024-05-21 02:31:45 瀏覽:7
arm編譯添加驅動 發布:2024-05-21 02:02:28 瀏覽:476