输入m和n,输出m-n之间的所有Fibonacci数,要求使用调用函数fib(n),它的功能是返回第n项Fibonacci数

2025-05-17 15:36:24
推荐回答(3个)
回答1:

// Author: Yach
// QQ: 79564727
// 申请请注明来者何人..

#include
using namespace std;
int fib(int);
void mAndn(int,int);
int fib(int n)
{

int f1 = 2;
int f2 = 3;
int temp=0;
if (n>=3){
for(int i=2;i {
temp = f1+f2;
f1 = f2;
f2 = temp;
}
return temp;
}
else if (n==2){
return f2;
}
else if (n==1){
return f1;
}

return 0;

}

void mAndn(int m,int n)
{
int swop;
if (m>n){
swop = n;
n = m;
m = swop;
}
int temp= 1;
bool flag = true;
while (flag)
{
if (fib(temp)>=m && fib(temp)<=n)
{
cout<<"第"< temp++;
}
else if (fib(temp)>n){flag = false;}
else temp++;
}
}

void main()
{ int m,n;
cout<<"Please input m: "< cin>>m;
cout<<"Please input n: "< cin>>n;
mAndn(m,n);
cout<<"Continue..."<}

回答2:

fib数列有公式,利用该公式就很好做了

回答3:

啥子哦