导航:网站首页 >
c语言编程 求Fibonacci数列前20项 , 用C语言编程 编一个求Fibonacci数列前n项和程序。
c语言编程 求Fibonacci数列前20项 , 用C语言编程 编一个求Fibonacci数列前n项和程序。
匿名网友:
#include <stdio.h>int Fibonacci(int n){if (n==0)return 1;else if(n==1)return 1;elsereturn Fibonacci(n-2)+Fibonacci(n-1);}void main(){int i=20;long j=Fibonacci(i);printf("%d",j);}
匿名网友:
斐波那契数列通项公式:斐波那契数列指的是这样一个数列:1、1、2、3、5、8、13、21、……这个数列从第三项开始,每一项都等于前两项之和。
#includeint main() {int a20={1,1},i=2;printf("a0=a1=");for(i=2;i{ai=ai-1+ai-2; // ai-2=ai-1; 这两行是多余的 // ai-1=ai;if(i%4==0)printf("\n");printf("a%d=%d ",i,ai);//加了格式说明符以及空格。
}return 0; }
匿名网友:
方法一for循环 publicclassFeiBoMethod{ 定义三个变量方法 publicstaticvoidmain(Stringargs){ inta=1,b=1,c=0; System.out.println"斐波那契数列前20项为:"; System.out.print(a+"\t"+b+"\t"); 因为前面还有两个1、1所以i for(inti=1;i c=a+b; a=b; b=c; System.out.print(c+"\t"); if((i+2)%4==0) System.out.println); } } } 方法2使用数组的方式实现 publicclassFeiBoMethod{ 定义数组方法 publicstaticvoidmain(Stringargs){ intarr=newint20; arr0=arr1=1; for(inti=2;i arri=arri-1+arri-2; } System.out.println"斐波那契数列的前20项如下所示:"; for(inti=0;i if(i%4==0) System.out.println(); System.out.print(arri+"\t"); } } } 扩展资料:递归实现 publicclassFeiBoMethod{ 使用递归方法 privatestaticintgetSum(intnum){ if(num==1||num==2) return1; else returngetSum(num-1)+getFibo(num-2); } publicstaticvoidmain(Stringargs){ System.out.println"斐波那契数列的前20项为:"; for(inti=1;i System.out.print(getSum(i)+"\t"); if(i%4==0) System.out.println(); } } }...
匿名网友:
斐波那契数列是:1,1,2,3,5,8,13,21,34,55,89...规律是:f0=1,f1=1,fi=fi-1+fi-2,i>1#include void main(){ int i,array20={1,1}; for (i=2; i<20; i++) { arrayi=arrayi-2+arrayi-1; } for (i = 0; i<20; i++) { printf("%d ",arrayi); } printf("\n");}写好了,看一下,测试通过。
。
。
...
匿名网友:
使用递归进行操作时,关键是设置好递归条件。
斐波那契数列的定义如下: f2 = f0 + f1 = 0 + 1 = 1,所以条件可以设置成当n==1或者n==2时,返回1。
其它项则依次递归调用即可。
#include int f(int n){if(n==1 || n==2)return 1;elsereturn (f(n-2)+f(n-1));}int main(){const int num = 20;int i;for(i=1;i<=num;i++){printf("%-6d",f(i));if(i%5==0)printf("\n");}printf("\n");return 0;}...
问题推荐