zoukankan      html  css  js  c++  java
  • 【9401】斐波那契数列

    Time Limit: 10 second
    Memory Limit: 2 MB

    问题描述
    斐波那契数列0,1,1,2,3,5,8,13,21,34,55...从第三项起,每一项都是紧挨着的前两项的和,写出计算斐波那契数列任意一个数据项的递归程序。

    Input

    输入格式

    Output

    数据项的值

    Sample Input

    10
    
    

    Sample Output

    34
    

    【题解】

    让a = 0,b = 1,如果n <=2 则要进行特判。佛则 直接累加到c,然后a = b,b =c,这样就可以了。最后输出c

    【代码】

    #include <cstdio>
    #include <stdlib.h>
    
    int n,a,b,c;
    
    void input_data()
    {
        scanf("%d",&n);
    }
    
    void get_ans()
    {
        a = 0;
        b = 1;
        if (n == 1) //这里进行n = 1和n = 2的特判
            {
                printf("%d",a);
                exit(0);
            }
        if (n == 2)
            {
                printf("%d",b);
                exit(0);
            }
        for (int i = 3;i <= n;i++) //如果大于3 则进行迭代。最后输出c
            {
                c = a + b;
                a = b;
                b = c;
            }
        printf("%d",c);
    }
    
    int main()
    {
        input_data();
        get_ans();
        return 0;
    }
    


     

  • 相关阅读:
    linux中apt-get使用
    部署ceph
    cinder存储服务
    ceph简介
    Horizon Web管理界面
    neutron网络服务2
    neutron网络服务
    nova计算服务
    cinder存储服务
    keystone身份认证服务
  • 原文地址:https://www.cnblogs.com/AWCXV/p/7632427.html
Copyright © 2011-2022 走看看