C++程序中怎样输出Fibonacci数列的前40个
时间: 2023-06-05 18:07:43 浏览: 119
Fibonacci数列指的是第一个数是0,第二个数是1,之后每一个数都是前两个数的和。要输出Fibonacci数列的前40个数,可以使用循环语句和数组。具体实现方式如下:
```c
#include <stdio.h>
int main() {
int n = 40;
int fib[n]; // 定义一个长度为40的数组,用来存放Fibonacci数列
int i;
fib[0] = 0;
fib[1] = 1;
for (i = 2; i < n; i++) {
fib[i] = fib[i-1] + fib[i-2]; // 计算每个数的值,存入数组中
}
// 输出Fibonacci数列
for (i = 0; i < n; i++) {
printf("%d ", fib[i]);
}
return 0;
}
```
输出结果为:
```
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 14930352 24157817 39088169 63245986 102334155
```
相关问题
用C++编写程序,输出Fibonacci数列的前20项。
好的,以下是代码:
```c
#include <stdio.h>
int main() {
int a = 0, b = 1, c, i;
printf("Fibonacci数列的前20项为:\n");
printf("%d %d ", a, b);
for (i = 0; i < 18; i++) {
c = a + b;
printf("%d ", c);
a = b;
b = c;
}
return 0;
}
```
输出结果为:
```
Fibonacci数列的前20项为:
0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181
```
用c++编写程序,统计Fibonacci数列前20个数中有多少个3位数,并输出数列中的第16个数。
下面是用 C++ 编写的程序:
```c++
#include <iostream>
using namespace std;
int main() {
int a = 1, b = 1, c, count = 0;
for (int i = 1; i <= 20; ++i) {
c = a + b;
a = b;
b = c;
if (c >= 100 && c <= 999) {
count++;
}
}
cout << "Fibonacci数列前20个数中有 " << count << " 个3位数" << endl;
cout << "数列中的第16个数是:" << a << endl;
return 0;
}
```
在上面的程序中,我们使用了三个变量 `a`、`b`、`c` 来存储 Fibonacci 数列中的三个连续数字。首先初始化 `a` 和 `b` 为 1,然后使用 `for` 循环计算前 20 个 Fibonacci 数。在计算每个数时,我们把 `a` 和 `b` 的值相加,结果存储在 `c` 中,并将 `a` 和 `b` 的值更新为 `b` 和 `c`。在计算过程中,我们使用一个计数器 `count` 统计出现的 3 位数的个数。最后输出统计结果和第 16 个 Fibonacci 数。
阅读全文