C语言,利用递归调用,编程输出斐波那契数列 ,这个怎么编啊,求指教啊

如题所述

#include<stdio.h>
long fun(int i)//递归函数
{
if(i==1||i==2)//递归终止条件
return 1;
else//递归通式
return(fun(i-1)+fun(i-2));
}
int main()
{
int n;
printf("请输入项数:");
scanf("%d",&n);
printf("\n斐波那契数列前%d项为:\n",n);
for(int i=1;i<=n;i++)
{
printf("%ld\t",fun(i));//调用函数
if(i%5==0)//每输出5项换行
printf("\n");
}
return 0;
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-01-01
#include<iostream>
using namespace std;
int main()
{
long int f1,f2;int j;
f1=1;f2=1;
for(j=1;j<=15;j++)
{
cout<<f1<<"\t"<<f2<<"\t";
if(j%2==0)
cout<<endl;
f1=f1+f2;
f2=f2+f1;
}
cout<<endl;
system("pause");
return 0;
}
这个用的是c++编程的!是斐波那契数列~
第2个回答  2012-01-02
#include<stdio.h>
double fib_val[100]={0};

double fibonacci(int n)
{
if(n<2)
{
return 1.0;
}
return fibonacci(n-1)+fibonacci(n-2);
}

void main(void)
{
int i,n;
printf("\n请输入一个2~100之间的整数:\n");
scanf("%d",&n);
for(i=0;i<n;i++)
printf("%.0lf ",fibonacci(i));
}
第3个回答  2012-01-02
这个好说!!
相似回答