A. 求出斐波那契数列前20项的c语言程序 快帮帮忙哦
斐波那契数列的递推公式为Fn=Fn-1+Fn-2,F1=F2=1
int
a,b,F,i,S20;
a=b=1;
S20=a+b;
for(i=3;i<=20;i++){
F=a+b;a=b;b=F;S20+=F;}
这个S20就是所求的前20项和。
B. C语言:采用递归调用函数方法计算Fibonacci数列的前20项
#include<iostream.h>
#include<iomanip.h>
long fibonacci(long,int);
void main(void)
{
int n;
cout<<"please input"n"";
cin>>n;
cout<<endl;
if(fibonacci(n,1)==-1)cout<<"error message:n<0";
}
long fibonacci(long number,int out)
{
if(number<0)
return-1;//return error message
else if(number==0)
return 0;
else if(number==1)
{
if(out)
cout<<number<<setw(5);
return 1;
}
else
{
long lVal;
if(out)
lVal=fibonacci(number-2,0)+fibonacci(number-1,1);
else
lVal=fibonacci(number-2,0)+fibonacci(number-1,0);
if(out)
cout<<lVal<<setw(5);
return lVal;
}
}
(2)c语言斐波那契前20项扩展阅读:
斐波那契数列是一组第一位和第二位为1,从第三位开始,后一位是前两位和的一组递增数列,
像这样的:1、1、2、3、5、8、13、21、34、55......
今天,用四种方式来进行实现:
1.递归
int Fibon1(int n)
{
if(n==1||n==2)
{
return 1;
}
else
{
return Fibon1(n-1)+Fibon1(n-2);
}
}
int main()
{
int n=0;
int ret=0;
scanf("%d",&n);
ret=Fibon1(n);
printf("ret=%d",ret);
return 0;
}
2.非递归
int Fibno2(int n)
{
int num1=1;
int num2=1;
int tmp=0;
int i=0;
if(n<3)
{
return 1;
}
else
{
for(i=0;i>n-3;i++)
{
tmp=num1+num2;
num1=num2;
num2=tmp;
}
return tmp;
}
}
3.数组
public int Fibno3(int n)
{
List<int>list=new List<int>();
list.fib(1);
list.fib(1);
int count=list.Count;
while(count<n)
{
list.fib(list[count-2]+list[count-1]);
count=list.Count;
}
return list[count-1];
}
4.队列
public int Fibno4(int n)
{
Queue<int>queue=new Queue<int>();
queue.Enqueue(1);
queue.Enqueue(1);
for(int i=0;i<=n-2;i++)
{
queue.Enqueue(queue.AsQueryable().First()+queue.AsQueryable().Last());
queue.Dequeue();
}
return queue.Peek();
}
C. c语言费波那契数列:计算并输出数列的前20项
你程序的输出不可能是你给的结果
输出在第二个for循环里的,而第二个for循环是在 i 能被5整除的时候才输出
两个for 循环很好理解
第一个 for 循环计算数列每一项
第二个 for 循环是打印数列项
两个循环彼此没有联系
D. ,c语言:利用数组求斐波那契数列的前20项
代码如下:
int a[20]={1,1};
printf(“%d %d ”,a[0],a[1]);
for(int i=0;i<20;i++)
{
printf(“%d ”,a[i]=a[i-1]+a[i-2]);
}
(4)c语言斐波那契前20项扩展阅读:
如何掌握C语言基础知识及技巧:
首先准备一台PC,学编程一般对PC没有太大的要求,一般主流的配置就好。
有了电脑之后,就得考虑安装什么操作系统了,主流使用的操作系统是windows,不过在这里不建议学习C编程使用windows,建议使用Linux。所以学习者最好安装双系统,或者彻底习惯Linux系统。
不管学习哪门编程语言,都建议学习者必须有一本关于此语言的全面知识的书籍,大一般采用的是谭浩强老师的《C语言程序设计》,还有 《C语言C++学习指南》从入门到精通(语法篇)视频课程在线学习等,建议学习者可以去仔细研读
E. C语言:编写程序用数组处理求解Fibonacci数列前20项之和并输出。
思路:先定义数组的前两项值,再依次对后面每项进行赋值,后面每项都是前两项的和。
例如:
#include
<stdio.h>
int
main(){
int
a[20],i;
a[0]=a[1]=1;
for(i=2;i<20;i++)
a[i]=a[i-1]+a[i-2];
for(i=0;i<20;i++){
printf("%4d
",a[i]);
if((i+1)%5==0)
printf("\n");
}
return
0;
}
/*
输出:
1
1
2
3
5
8
13
21
34
55
89
144
233
377
610
987
1597
2584
4181
6765
*/
F. 求出斐波那契数列前20项的C语言程序 快帮帮忙哦
斐波那契数列的递推公式为Fn=Fn-1+Fn-2,F1=F2=1
int a,b,F,i,S20;
a=b=1;
S20=a+b;
for(i=3;i<=20;i++){
F=a+b;a=b;b=F;S20+=F;}
这个S20就是所求的前20项和。