| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2476 人关注过本帖
标题:c语言编程
只看楼主 加入收藏
lfbb
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2016-10-19
结帖率:66.67%
收藏
已结贴  问题点数:20 回复次数:5 
c语言编程
已知Fibonacci数列的规律是1,1,2,3,5,8,…,即数列的前两项是1,其后的每一项都是其前两项的和。请求出数列中小于10000的最大的数。哪位大神能帮忙解答下吗
搜索更多相关主题的帖子: c语言编程 最大的 
2016-11-02 10:12
炎天
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:桃花岛
等 级:贵宾
威 望:29
帖 子:1218
专家分:4986
注 册:2016-9-15
收藏
得分:0 
#include<stdio.h>

main()
{
    int a[100]={1,1};
    int i;
    for(i = 2; ; i++)
    {
        a[i]=a[i-1]+a[i-2];
        if(a[i] >= 10000)
        {
            printf("%d",a[i-1]);
            break;
         }
    }
    return 0;
}

早知做人那么辛苦!  当初不应该下凡
2016-11-02 12:54
xzlxzlxzl
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:湖北
等 级:贵宾
威 望:125
帖 子:1091
专家分:5825
注 册:2014-5-3
收藏
得分:5 
Fibonacci数列是理解递归算法的典范,非要用循环做的话最好不要用数组,你并不能确定数组要多大,下述代码应该可用循环实现:
void main()
{
   int a1=0,a2=1,t;
   while(a1+a2<10000)
   {
      t=a1+a2;
      a1=a2;
      a2=t;
    }
    printf("%d\n",a2);
}
2016-11-02 13:33
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
收藏
得分:5 
回复 3楼 xzlxzlxzl
while(a1+a2<10000)
{
a1=a1+a2;
a2=a1+a2;
}
老师上课教的

附加一句:光这样判断这个程序是有漏洞的,应附加一句
printf("%d",a2>10000?a1:a2);

[此贴子已经被作者于2016-11-2 13:55编辑过]


[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2016-11-02 13:40
xzlxzlxzl
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:湖北
等 级:贵宾
威 望:125
帖 子:1091
专家分:5825
注 册:2014-5-3
收藏
得分:0 
回复 4楼 九转星河
可行,非专业,没老师教


[此贴子已经被作者于2016-11-2 13:51编辑过]

2016-11-02 13:46
书生牛犊
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:星夜征程
等 级:贵宾
威 望:10
帖 子:1101
专家分:5265
注 册:2015-10-27
收藏
得分:5 
以下是引用xzlxzlxzl在2016-11-2 13:33:48的发言:

Fibonacci数列是理解递归算法的典范,非要用循环做的话最好不要用数组,你并不能确定数组要多大,下述代码应该可用循环实现:
void main()
{
   int a1=0,a2=1,t;
   while(a1+a2<10000)
   {
      t=a1+a2;
      a1=a2;
      a2=t;
    }
    printf("%d\n",a2);
}
作为新人,我建议你先试图理解这个程序。。。这个思路比较简单直接。

φ(゜▽゜*)♪
2016-11-02 15:46
快速回复:c语言编程
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020750 second(s), 11 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved