C语言实现斐波那契数列

对于斐波那契数列,其下一个数字是前两个数字的和,例如:0、1、1、2、3、5、8、13、21等等;斐波那契数列的前两个数为0和1;

使用C语言实现斐波那契数列的方法有两种,递归和无递归;

无递归的C语言实现方法

不使用递归的C语言示例源码:

#include <stdio.h>

int main(){
    int n1=0,n2=1,n3,i,number;
    printf("Enter the number of elements:");
    scanf("%d",&number);
    printf("\n%d %d",n1,n2);//打印0和1
    for(i=2;i<number;++i){
        //从2开始循环,因为0,1已经打印
        n3=n1+n2;
        printf(" %d",n3);
        n1=n2;
        n2=n3;
    }
    return 0;
}

程序运行效果如下:

C语言实现斐波那契数列

使用递归的C语言实现方法

使用递归的C语言示例源码:

#include <stdio.h>

void printFibonacci(int n){
    static int n1=0,n2=1,n3;
    if(n>0){
        n3 = n1 + n2;
        n1 = n2;
        n2 = n3;
        printf("%d ",n3);
        printFibonacci(n-1);
    }
}

int main(){
    int n;
    printf("Enter the number of elements: ");
    scanf("%d",&n);
    printf("Fibonacci Series: ");
    printf("%d %d ",0,1);
    printFibonacci(n-2);//n-2 因为已经打印了2个数
    return 0;
}

原创内容,如需转载,请注明出处;

本文地址: https://www.perfcode.com/p/fibonacci-series-in-c.html

分类: 计算机技术
推荐阅读:
C语言交换两个变量 在C语言中交换两个变量,需要创建一个临时变量来存储其中的一个值;例如交换a,b两个值时,需创建一个临时变量保存a的值,再将b值赋予a,最后将临时变量的值赋予b,完成交换过程;
Python next()函数 next() 是 Python 的内置函数之一,用于获取迭代器中的下一个元素。
pm.max_children的作用 "pm.max_children" 是一个 PHP-FPM 配置选项,用于指定每个 PHP-FPM 进程池中最大的子进程数。它控制着 PHP-FPM 进程池的大小和性能表现。
C语言toupper()函数:将字符转换成大写 toupper()是C语言标准库中的一个函数,用于将一个字符转换成对应的大写形式;如果传入的字符参数是一个小写字母,tolower()函数会返回其对应的大写字母;如果参数不是小写字母,则原封不动的返回;
查询Linux系统是哪个发行版 在Linux系统下,如果你想知道当前系统是哪一个发行版,你可以使用一条命令实现查询:
一条命令下载整个网站 在Linux系统下,你可以通过一条命令来下载整个网站,并按照网站的目录结构生成对应的文件夹及网页文件: