c语言

c语言fibonacci数列怎么实现

小亿
160
2024-05-16 10:55:19
栏目: 编程语言

在C语言中,可以通过递归或循环来实现Fibonacci数列。以下是两种方法的示例代码:

  1. 递归实现:
#include <stdio.h>

int fibonacci(int n) {
    if (n <= 1) {
        return n;
    } else {
        return fibonacci(n-1) + fibonacci(n-2);
    }
}

int main() {
    int n, i;
    printf("Enter the number of terms: ");
    scanf("%d", &n);
    
    printf("Fibonacci Series: ");
    for (i = 0; i < n; i++) {
        printf("%d ", fibonacci(i));
    }
    
    return 0;
}
  1. 循环实现:
#include <stdio.h>

int main() {
    int n, first = 0, second = 1, next, i;
    
    printf("Enter the number of terms: ");
    scanf("%d", &n);
    
    printf("Fibonacci Series: ");
    
    for (i = 0; i < n; i++) {
        if (i <= 1) {
            next = i;
        } else {
            next = first + second;
            first = second;
            second = next;
        }
        printf("%d ", next);
    }
    
    return 0;
}

以上两种方法都可以实现Fibonacci数列,其中递归方法更简洁易懂,但在计算大量项时会有性能问题,而循环方法效率更高。

0
看了该问题的人还看了