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. 组态王6.55WEB全新发布步骤

    转载请... 算了 估计没有人转..自己留着看 目的: 本教程通过组态王6.55实现一个WEB服务器和一个WEB画面的客户端,总共两个工程.服务器工程名为 Server , 客户点为 Client.S ...

  2. 使用memcache(thinkphp框架学习)

    $memcache = new Memcache; $memcache->connect("localhost",11211); $memcache->set('sxt ...

  3. MVC-简单验证码制作

    1.制作验证码: using System; using System.Collections.Generic; using System.Drawing; using System.Drawing. ...

  4. C# dynamic

    [TestMethod] public void DynamicTest() { dynamic Customer = new ExpandoObject(); Customer.Name = &qu ...

  5. DB天气app冲刺第四天

    今天卡壳了 做得很慢.. 明天继续 换一种思路试一下吧..

  6. iOS8中的UIActionSheet添加UIDatePicker后,UIDatePicker不显示问题

    解决方法:   IOS8以前: UIActionSheet* startsheet = [[UIActionSheet alloc] initWithTitle:title delegate:self ...

  7. Jquer学习

    1:什么是Jquery 2:jquery的例子 3:后记

  8. 下拉框点链接js

    $("#input_text").click(function(){ $("#input_fonts").show(); }); $("#input_ ...

  9. java代码整理---正则表达式

    1. 邮箱验证 : package javaRegx2016311; import java.util.regex.Matcher; import java.util.regex.Pattern; p ...

  10. About GAC

    http://blogs.msdn.com/b/msbuild/archive/2007/04/12/new-reference-assemblies-location.aspx http://web ...