當前位置:首頁 » 編程語言 » 斐波那契數列前四十c語言
擴展閱讀
賬號密碼不知道如何輸入 2022-08-20 03:41:35

斐波那契數列前四十c語言

發布時間: 2022-07-05 17:00:08

c語言中,求Fibonacci數列前40個數的問題有點不明白

你現在想像有倆盒子f1,f2,首先倆盒子里裝得是第一個數和第二個數

printf("%12ld
%12ld",f1,f2);//首先列印第一個和第二個數

f1=f1+f2;/*然後把第一盒子里的數改為數列的第三個數(第一個數與第二個數的和)*/

f2=f2+f1;/*再把第二個盒子里的數改為第四個數(第二個數與第三個數的和因為你第一個盒子里裝的是數列第三個數)*/

i<=20說明一共循環二十次,每次列印倆數,一共列印40個數。

㈡ C語言的 求fibonacci數列前四十項和

#include<stdio.h>
#define N 40

int main()
{
int f[N+1]={0};
int i,sum=0;
f[1]=f[2]=1;
for( i=3; i<=N; i++)
f[i] = f[i-1]+f[i-2];
for( i=1; i<=N; i++){
//printf( "第%d項:\t%d\n", i, f[i]);
sum += f[i];
}
printf( "前%d項和:\t%d\n", N, sum);
//system("pause");
return 0;
}

㈢ 求用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);
}

㈣ c問題,求fibonacci數列前40個數的疑問

你想問什麼?這個例子里得F[0]和F[1]的值都是1,輸出的是從F[0]……F[19]共前20個fibonacci數列的數,分別是1,1,2,3,5,8,13,21,34……

不是,你要把數組搞清楚,數組的第一個是F[0]而不是F[1]。而且本例最先賦值的只是F[0]和F[1]兩個,值都是1。後面的F[i]都是通過循環算出來的fibonacci數列的數。
不是只有f[0]、f[1]在循環,循環的是f[i]=f[i-2]+f[i-1] 。而是最先只給f[0]、f[1]這兩個賦了值,後面的都是循環中算出來的。

㈤ 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;

}

(5)斐波那契數列前四十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語言!!!定義數組完成,按每行輸出5個數的形式輸出fibonacci數列的前40項

注意:40項斐波那契數列,數字將會非常大,int類型變數已無法存儲!代碼中使用到了64位無符號整型數unsigned __int64,以便滿足題目要求且可繼續擴展(比如輸出50項)。

#include<stdio.h>

#defineMAX40/*費波那契數列項數上限*/

voidfibonacci(unsigned__int64f[],intn){/*生成n項費波那契數列,n=0為起始*/
inti;
f[0]=0;/*F0=0*/
f[1]=1;/*F1=1*/
for(i=2;i<=n;i++)/*Fn=Fn-1+Fn-2(n>=2)*/
f[i]=f[i-1]+f[i-2];
}

intmain(void){
unsigned__int64f[MAX];
inti;

fibonacci(f,MAX);

printf("前%d項斐波那契數列(自F0起): ");
for(i=0;i<=MAX;i++){
printf("%I64u ",f[i]);
if((i+1)%5==0)/*5個數換行*/
printf(" ");
}


printf(" ");
getch();/*屏幕暫留*/
return0;
}

運行結果

如有問題,可點擊頭像聯系我~~

㈦ 求Fibonacci數列前40個數 判斷m是否為素數 使用c語言!!

斐波那契

#include<stdio.h>
intfib(intn)
{
if(n==1||n==2)
return1;
returnfib(n-1)+fib(n-2);
}
intmain()
{
intn=40;
printf("%d ",fib(n));
return0;
}

素數

#include<stdio.h>
voidmain()
{
inti,n;
printf("請輸入n:");
scanf("%d",&n);
i=2;
while(i<n)
{
if(n%i==0)
break;
i++;
}
if(i==n)
printf("%d是素數 ",n);
else
printf("%d不是素數 ",n);

}

㈧ 哪位幫忙跟我解釋一下用C語言for循環求解Fibonacci數列前40項和的思路啊~~

假設存在f[40]中
先初始化前兩項
f[0]
=
f[1]
=
1;
然後for循環,f[i]
=
f[i-1]
+
f[i-2];
i從2開始,即第三項
for
(i
=
2;
i
<
40;
i
++)

f[i]
=
f[i-1]
+
f[i-2];
就可以了

㈨ (1) 求Fibonacci數列:1,1,2,3,5,8,…的前40個數。 C語言,用for循環

1、首先打開編輯代碼的軟體。再定義一個int類型的變數a。

6、在while語句中,寫入代碼。再用break就可以結束循環。

㈩ 用遞歸法求斐波那契數列前40項。

用遞歸法求斐波那契數列前40項方法為:

1、首先,對非法下標進行判斷。

注意事項:

斐波那契數列在自然科學的其他分支,有許多應用。例如,樹木的生長,由於新生的枝條,往往需要一段「休息」時間,供自身生長,而後才能萌發新枝。