天天看点

斐波纳契数列<经典递推问题>

斐波纳契数列

题目描述

斐波纳契数列

1,1,2,3,5,8,13,21,34,55,89……这个数列则称为“斐波纳契数列”,其中每个数字都是“斐波纳契数”。

输入

一个整数N(N不能大于40)

输出

由N个“斐波纳契数”组成的“斐波纳契数列”。提交时请严格注意格式, 两个斐波那契数之间用空格隔开, 最后一个答案后加回车

样例输入

6

样例输出

1 1 2 3 5 8

#include <stdio.h>
#include <stdlib.h>

int main()
{
    int a[];
    int i,c,N;
    a[]=;                             //规定两个初始值
    a[]=;
    scanf("%d",&N);

    for(i=;i<N;i++)
        {
            if(i<=)
            printf("%d ",a[]);
            if(i>&&i<N)
            {
            a[i]=a[i-]+a[i-];         //递推过程
            printf("%d ",a[i]);
            }
        }
        return ;


}
           

这个问题虽然简单,但是引发了以后对递推的学习,包括函数的递推,数组的递推等问题,都是这个原理。