首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数fun(),它的功能是求Fibonacci数列中小于t的最大的一个数,结果由函数返回。其中Fibonacci数列F(n)的定义为 F(0)=0,F(1)=1 F(n)=F(n-1)+F(n-2) 例如:t=1000时,函数值为9
请编写函数fun(),它的功能是求Fibonacci数列中小于t的最大的一个数,结果由函数返回。其中Fibonacci数列F(n)的定义为 F(0)=0,F(1)=1 F(n)=F(n-1)+F(n-2) 例如:t=1000时,函数值为9
admin
2009-02-15
41
问题
请编写函数fun(),它的功能是求Fibonacci数列中小于t的最大的一个数,结果由函数返回。其中Fibonacci数列F(n)的定义为
F(0)=0,F(1)=1
F(n)=F(n-1)+F(n-2)
例如:t=1000时,函数值为987。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序:
#include <conio.h>
#include <math.h>
#include <stdio.h>
int fun(int t)
{
}
main()
{
int n;
clrscr();
n=1000;
printf("n=%d, f=%d\n",n, fun(n));
}
选项
答案
int fun(int t) { int a=1,b=1,c=0,i; /*a代表第n-2项,b代表第n-1项,c代表第n项*/ /*如果求得的数。比指定比较的数小,则计算下一个Fibonacci数,对a,b得新置数*/ do { c=a+b; a=b; b=c; } while(c<t); /*如果求得的数c比指定比较的数大时,退出循环*/ c=a; /*此时数c的前一个Fibonacci数为小于指定比较的数的最大的数*/ return c; }
解析
根据所给数列定义不难发现,该数列最终的结果是由两个数列之和组成,所以可以在循环内部始终把c看成是前两项之和(即第n项),而a始终代表第n-2项,b始终代表第n-1项(通过不断地重新赋值来实现)。应注意,退出循环时得到的数c是大于指定比较的数的最小的数,而它的前一个数就是小于指定比较的数的最大的数。
转载请注明原文地址:https://kaotiyun.com/show/vTID777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
根据《中华人民共和国中国人民银行法》的规定,我国货币政策的最终目标是(),并以此促进经济增长。
按劳分配是社会主义的分配原则,它体现着()分配领域中社会主义性质的分配关系。
在秋冬时节,我国大部分地区常会出现大雾,阻碍水、陆、空交通的正常运行,引发交通事故,危害人体健康。下列关于雾的说法正确的是()。
国际收支平衡表的四部分主要内容中,最基本的项目是()。
近年来,我国极地科学考察不断取得优异成绩,目前已在南北极建立了四个科学考察平台.在北极建立的是()。
养花专业户李某为防止偷花,在花房周围私拉电网。一日晚,白某偷花不慎触电.经送医院抢救,不治身亡。李某对这种结果的主观心理态度是什么?()
一个箱子里有四种不同颜色的小球,每次拿出2个,要保证有10次所拿的结果是一样的,至少要拿()次。
一个南4个数字(0—9之间的整数)组成的密码,每连续两位都不相同,问任意猜一个符合该规律的数字组合,猜中密码的概率为()。
设a,b均为正整数,且有等式11a+7b=一132成立.则a的值为()。
随机试题
关于控制X线影像变形的方法,正确的是
属于H2受体阻断剂的是9选择性激动β2受体而扩张支气管的是
在某抽样调查中,在进行人群患龋情况调查时已知预期阳性率为50%,要求抽样误差为20%。根据公式N=K×Q/P,需要调查的人数为
一般需经3~4周培养才能见到有细菌生长的细菌是A.结核杆菌B.淋球菌C.空肠弯曲菌D.炭疽菌E.军团菌
关于沥青针入度试验,请回答以下问题。老化的沥青三大指标的变化规律()。
[2014年第47题]超过100m的高层建筑生活给水供水方式宜采用:
下列关于老龄化的问题,说法错误的是()
对投资者进行知识测试的测试试卷及答案通过()系统统一下发至期货公司会员。
1989年联合国大会通过的《儿童权利公约》的核心精神是( )。
设f(x.y)=则在原点(0,0)处f(x,y)()
最新回复
(
0
)