Fibonacci数列小程序

问题分析Fibonacci数列特征是前两项数均为1,从第三项起,前两项的和为第三项的数的数值用公式归纳起来为:f1=f2=1、f1=f1+f2、f2=f1+f2。

程序源代码:

#include<stdio.h>

      #include<stdlib.h>

main()

     {

          int m,n,i,j=1;

          long f1,f2; 

          printf("\t\t\t    Fibonacci数列测试小程序\n\n"); /***可省略***/

          printf("请输入测试数据组数\n"); /***可省略***/

          scanf("%d",&n);

        while(n--)

       {    

            if(n+1)

           {

              printf("\n第%d组测试\n\n",j);

              j++;

            }

         printf("请输入需要输出数的序号:\n");/***可省略***/

         scanf("%d",&m);

       f1=f2=1;

       for(i=2;i<m;)

         {

            f1=f1+f2;

            i++;  

         if(i==m) break;

            f2=f1+f2;

            i++;

           if(i==m) break; 

        }

          if(i%2==1)

           printf("第%d个数为%d\n",m,f1);

          else

          printf("第%d个数为%d\n",m,f2);

         system("pause");

         system("CLS");

        printf("\t\t\t    Fibonacci数列测试小程序\n\n");/***可省略***/

       } 

   } 

程序分析: while 循环表示的是测试数据的组数,程序最主要的部分是对公式:f1=f2=1、f1=f1+f2、f2=f1+f2的运用。由于所指定的数的序号不确定,所以每得出一项数就需要判断一下该项数的序号。又须知道所给序号是奇是偶,然后是奇数输出f1,是偶数输出f2。当然,也可以将f1,f2均赋值给同一个变量,然后再输出这个变量,就不需要再判断了。

Fibonacci数列小程序的更多相关文章

  1. 程序员面试题精选100题(16)-O(logn)求Fibonacci数列[算法]

    作者:何海涛 出处:http://zhedahht.blog.163.com/ 题目:定义Fibonacci数列如下: /  0                      n=0 f(n)=      ...

  2. fibonacci 数列及其应用

    fibonacci 数列及其延展 fibonacci计算 fibonacci数列是指 0,1,1,2,3,5,8,13,21……这样自然数序列,即从第3项开始满足f(n)=f(n-1)+f(n-2): ...

  3. 【编程题目】题目:定义 Fibonacci 数列 输入 n,用最快的方法求该数列的第 n 项。

    第 19 题(数组.递归):题目:定义 Fibonacci 数列如下:/ 0 n=0f(n)= 1 n=1/ f(n-1)+f(n-2) n=2输入 n,用最快的方法求该数列的第 n 项. 思路:递归 ...

  4. 用PL0语言求Fibonacci数列前m个中偶数位的数

    程序说明:求Fibonacci数列前m个中偶数位的数: 这是编译原理作业,本打算写 求Fibonacci数列前m个数:写了半天,不会写,就放弃了: 程序代码如下: var n1,n2,m,i; pro ...

  5. C++写一个排列组合小程序

    今天突然想到一个问题,有时候,针对同一个事件有多种反映,特别是游戏AI当中,这种情况下需要采取最适合的方案,哪种方案最适合,可以将每种方案的结果或影响都计算一遍,从而选择最合适的.最基本就是一个排列组 ...

  6. Fibonacci数列的解法

    Fibonacci数列的解法: 1.递归算法 递归的概念,我说不清楚,语文不好.但是核心思想,我认为就是入栈出栈.比方说,你想要求得某个结果,如果一步求解不出来,那么先把最后一步的计算步骤进栈,先不考 ...

  7. 18.12.09-C语言练习:兔子繁衍问题 / Fibonacci 数列

    题目: 问题解析: 这是典型的/Fibonacci 数列问题.具体这里不赘述. 问题中不论是初始的第1对兔子还是以后出生的小兔子都是从第3个月龄起每个月各生一对兔子. 设n1,n2,n3分别是每个月1 ...

  8. Fibonacci数列时间复杂度之美妙

    Fibonacci数列: fib(0)=1 fib(1)=1 fib(n)=fib(n-1)+fib(n-2) 上课老师出了一道题,求下列函数的时间复杂度: int fib(int d) { ) ; ...

  9. [hdu 1568] Fibonacci数列前4位

    2007年到来了.经过2006年一年的修炼,数学神童zouyu终于把0到100000000的Fibonacci数列(f[0]=0,f[1]=1;f[i] = f[i-1]+f[i-2](i>=2 ...

随机推荐

  1. MVC-内容详情页显示内容

    @model InfoDataProvider.DataModel.FAQ_ContentUser 内容Content字段:如果里面有html标签. @Html.DisplayFor(p => ...

  2. 关于appStore评分的相关说明--转自张诚教授

    在iOS7以前,评分地址如下 itms-apps://ax.itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?typ ...

  3. sizeof()函数求各类型变量所占空间的方法

    #include "stdafx.h" #include <iostream> using namespace std; ]) { cout<<sizeof ...

  4. hdu 4800 Josephina and RPG

    简单dp #include<cstdio> #define maxn 10005 #include<cstring> #include<algorithm> usi ...

  5. WAF 与 RASP 的安装使用大比拼!

    什么是WAF和RASP? WAF全称是Web application firewall,即 Web 应用防火墙.RASP 全称是 Runtime Application Self-protect,即应 ...

  6. 日均百万 PV 的站点如何做性能监测?试试「3M口罩」!

    对很多开发者而言,如果网站的日流量达到百万级别,峰值 PV 也突破了 3 万,这样的站点在线下测试的时候总是让人心力交瘁.... 生产环境下的性能监测问题更是尤其让人头疼! 开发同学在想,运维人员也在 ...

  7. UVA 558 Wormholes

    要问是否存在一个总权重为负数的环,用dfs即可解决. time:33ms #include <cstdio> #include <cstring> #define N 3000 ...

  8. 综合经验:IO读写错误必然导致程序崩溃

    仿佛是忽然间产生的问题,每次程序退出时候,必然崩溃,花了整整一天才找到原因,就是对数据库的IO读写错误.主要是因为析构函数调用了Disconnect函数,内容如下: void SFTPTool::Di ...

  9. POJ 2513 Colored Sticks 解题报告

    第一次接触欧拉回路.虽然在离散数学里学过,敲代码还是第一次. 本题是说端点颜色相同的两根木棒可连接,能否将所有的木棒连成一条直线. 将颜色视为节点v,将木棒视为边e,构成图G.如果能找到一条一笔画的路 ...

  10. 【转】Windows7打造全方位护眼系统

    原文网址:http://www.cnblogs.com/duboway/archive/2013/04/20/3033257.html 电脑屏幕: Win7和Vista系统设置如下: 第一步:桌面空白 ...