# C 程序：显示斐波那契数列

> 原文： [https://www.programiz.com/c-programming/examples/fibonacci-series](https://www.programiz.com/c-programming/examples/fibonacci-series)

#### 在此示例中，您将学习显示前 n 个数字的斐波那契数列（由用户输入）。

要理解此示例，您应该了解以下 [C 编程](/c-programming "C tutorial")主题：

*   [C 编程运算符](/c-programming/c-operators)
*   [C `while`和`do...while`循环](/c-programming/c-do-while-loops)
*   [C `for`循环](/c-programming/c-for-loop)
*   [C `break`和`continue`](/c-programming/c-break-continue-statement)

* * *

斐波那契数列是一个序列，其中下一项是前两项的和。 斐波那契数列的前两个项是 0，然后是 1。

```c
The Fibonacci sequence: 0, 1, 1, 2, 3, 5, 8, 13, 21

```

访问此页面以了解有关[的斐波那契序列](https://www.mathsisfun.com/numbers/fibonacci-sequence.html)。

* * *

## 斐波那契数列（最多 n 个词）

```c
#include <stdio.h>
int main() {
    int i, n, t1 = 0, t2 = 1, nextTerm;
    printf("Enter the number of terms: ");
    scanf("%d", &n);
    printf("Fibonacci Series: ");

    for (i = 1; i <= n; ++i) {
        printf("%d, ", t1);
        nextTerm = t1 + t2;
        t1 = t2;
        t2 = nextTerm;
    }

    return 0;
} 
```

**输出**

```c
Enter the number of terms: 10
Fibonacci Series: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 
```

* * *

## 直到一定数目的斐波那契数列

```c
#include <stdio.h>
int main() {
    int t1 = 0, t2 = 1, nextTerm = 0, n;
    printf("Enter a positive number: ");
    scanf("%d", &n);

    // displays the first two terms which is always 0 and 1
    printf("Fibonacci Series: %d, %d, ", t1, t2);
    nextTerm = t1 + t2;

    while (nextTerm <= n) {
        printf("%d, ", nextTerm);
        t1 = t2;
        t2 = nextTerm;
        nextTerm = t1 + t2;
    }

    return 0;
} 
```

**输出**

```c
Enter a positive integer: 100
Fibonacci Series: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 
```