www.gsyw.net > 分别用非递归和递归的方法编写函数求斐波那契数列第n项。斐波那契数列1,1,2,3,5,8,13,…

分别用非递归和递归的方法编写函数求斐波那契数列第n项。斐波那契数列1,1,2,3,5,8,13,…

/** 已知Fibonacci数列:1,1,2,3,5,8,……,F(1)=1,F(2)=1,F(n)=F(n-1)+F(n-2)*/#include <stdio.h>#include <stdlib.h> typedef long long int int64;//方法1,递归法 int64 Fibonacci(int n) { int64 sum; if(n<=0) { printf("参数值非法!\n"); exit(-1); //直接

main(){int n,n1;n=scanf("%d",&n);/*输入要求的斐波那契数列的第n项的值*/int a[1000];/*定义1000个元素的数组,存储斐波那契数列的前1000项*/a[0]=1;a[1]=1;for(n1=2;n1<1000;n1++){a[n1]=a[n1-1]+a[n1-2];}printf(("%4d",a[n]);/*打印斐波那契数列的第n项的值*/}

#include main() { unsigned long Fibonacci[100] = {0,1}; char i,n; printf("\n第几项:"); scanf("%d",&n); if(n > 100) n = 99; for(i = 2;i 评论0 0 0

int fab[8]; void fib(int n); void fib(int n) { if(n == 0) fab[1] =1; else if(i == 1) fab[1] =1; else fab[n] = fib(n-1) + fib(n-2); }

//fibonacci数列:1 1 2 3 5 8 13 21 34 55#include<stdio.h> double fib_val[100]={0}; double fibonacci_1(int n)//递归,计算时间长,n最好不超过30 { if(n<2) { return 1.0; } return fibonacci_1(n-1)+fibonacci_1(n-2); } void fibonacci_2(int n)//非递归 {

//递归int fun(int n){ if(n==1 || n==2) return 1; else return fun(n-1)+fun(n-2);}//非递归int fun(){ int ans[41]; ans[0]=ans[1]=1; for(int i=2;i 评论0 0 0

var a = 1;var b = 1;var c = b;var i = 2;var n = 6;while(i 评论0 0 0

//fibonacci数列:1 1 2 3 5 8 13 21 34 55#includedouble fib_val[100]={0};double fibonacci_1(int n)//递归,计算时间长,n最好不超过30{ if(n

因为用了很没有效率的递归,所以出结果有点慢#include<iostream.h> f(int); main() { int i,s=0; for(i=1;i<=100;i++) { cout<<f(i)<<'\t'; s+=f(i); } cout<<endl; cout<<"前100项的和为"<<s<<endl; } f(int i) { int value; if(i==1||i==2) value=1; else value=f(i-1)+f(i-2); return value; }

c语言编写一个使用迭代计算斐波那契数列中第n项的函数:#include int fibonacci(int n) { if( n == 1 || n == 2) // 递归结束的条件,求前两项 return 1; else return fibonacci(n-1)+fibonacci(n-2); // 如果是求其它项,先要求出它前面两项,然后做和.} int main() { int n; printf("please input n: "); scanf("%d",&n); printf("result: %d\n",fibonacci(n)); return 0; }

相关搜索:

网站地图

All rights reserved Powered by www.gsyw.net

copyright ©right 2010-2021。
www.gsyw.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com