斐波那契数列问题(C++用一维数组完成)

2025-02-06 02:30:58
推荐回答(3个)
回答(1):

#include
using namespace std;
int main()
{
int i,a[20];
a[0]=a[1]=1;
for(i=2;i<=19;i++) //计算从第三个元素开始的值,存入数组a[i]
{
a[i]=a[i-1]+a[i-2];
}
for(i=0;i<=19;i++) //输出
{
cout< }
cout< system ("pause");
}

用dev-c写的.
绝对能过

回答(2):

斐波拉契数列体现的是递归思想,自然用递归来做最好。
#include
using namespace std;
int num(int arg1,int arg2) {
int target;
target = arg1 + arg2;
if (target>10000000) {
return 0;
}
cout << target << " ";
num(arg2,target);
return target;
}
int main() {
int i=0,j=1;
cout << "0 1 ";
num(i,j);
return 0;
}
output:
~/D/p/cpp> ./a.out
0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765 10946 17711 28657 46368 75025 121393 196418 317811 514229 832040 1346269 2178309 3524578 5702887 9227465

回答(3):

矩阵乘法做