首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
编写函数jsValue(),它的功能是求Fibonacci数列中大于t的最小的一个数,结果由函数返回,其中Fibonacci数列F(n)的定义为: F(0)=0, F(1)=1 F(n)=F(n-1)+F(n-2) 最后调用函数writ
编写函数jsValue(),它的功能是求Fibonacci数列中大于t的最小的一个数,结果由函数返回,其中Fibonacci数列F(n)的定义为: F(0)=0, F(1)=1 F(n)=F(n-1)+F(n-2) 最后调用函数writ
admin
2009-02-15
29
问题
编写函数jsValue(),它的功能是求Fibonacci数列中大于t的最小的一个数,结果由函数返回,其中Fibonacci数列F(n)的定义为:
F(0)=0, F(1)=1
F(n)=F(n-1)+F(n-2)
最后调用函数writeDat(),把结果输出到文件OUT10.DAT中。
例如:当t=1000时,函数值为1597。
注意:部分源程序已给出。
请勿改动主函数main()和写函数WriteDat()的内容。
试题程序:
#include<stdio.h>
int jsValue(int t)
{
}
main()
{
int n;
n=1000;
printf("n=%d, f=%d\n", n,jsValue(n));
writeDat();
}
writeDat()
{
FILE *in, *out;
int n,s;
out = fopen("OUT10.DAT", "w");
s = jsValue(1000); printf("%d",s);
fprintf(out, "%d\n", s);
fclose(out);
}
选项
答案
int jsValue(int t) { int f1=0,f2=1,fn; fn=f1+f2; while(fn<=t) {f1=f2;f2=fn;fn=f1+f2;} /*如果当前的Fibonacci数不大于t,则计算下一个 Fibonacci数*/ return fn; /*返回Fibonacci数列中大于t的最小的一个数*/ }
解析
解答本题的关键是要充分理解题意,只有理解了题意本身的数学过程,才能把数学过程转化为程序逻辑。根据已知数列,我们不难发现:Fibonacci数列中,从第三项开始,每一项都可以拆分为前两项之和。本题要求找到该数列中“大于t的最小的一个数”。这里可以借助一个while循环来依次取数列中的数,直到出现某一项的值大于t,那么这一项就是“大于t的最小的一个数”。注意:在循环体内部,我们用变量f1始终来表示第n项的前面第二项,用变量f2来始终表示第n项的前面第一项。这就实现了变量的活用与巧用。
转载请注明原文地址:https://kaotiyun.com/show/CUfZ777K
本试题收录于:
三级信息管理技术题库NCRE全国计算机三级分类
0
三级信息管理技术
NCRE全国计算机三级
相关试题推荐
()用于完成网络数据传输、转发等通信处理任务。
文件服务最重要与最基本的是()功能。
在Internet中,对网络的攻击可分为两种类型:服务攻击和()。
网络操作系统分为文件服务器与()。
在网络设备的选取时,主干设备一定要留有一定的余量,要注意系统的()。
网络需求详细分析主要包括:()分析、()分析、网络可用性与可靠性分析、网络安全性需求,以及分析网络工程造价估算。
网络运行环境主要包括()与()两个部分。
下列选项中,关于自治系统的叙述不正确的是()。
设有关系R(A,B,C),在下列的等式中,()是不成立的。
随机试题
______rightnow,shewouldgetthereonSunday.
最易引起尿路感染的细菌是()
发布房地产广告,应当具有或者提的证明文件包括()
某商业银行2012年第二季度吸收存款3000万元,取得贷款利息收入200万元。从事贴现业务收入15万元,从事信托贷款取得服务费10万元,办理结算业务取得手续费收入4万元;本期受托贷款业务,收到该业务贷款利息100万元,并收取受托贷款的服务费10万元。则该商
盈利是银行经营的根本目的和动力。
某公司对顾客投诉数据进行分析与整理,找出服务质量存在的主要问题,最适宜的分析工具是()。[2007年真题]
奥运会期间看游泳比赛的记忆属于()。
“手舞足蹈,摩拳擦掌”属于()
Evidenceofthebenefitsthatvolunteeringcanbringolderpeoplecontinuestorollin."Volunteershaveimprovedphysicalands
AIDSAcquiredImmunodeficiencySyndrome(AIDS),isakindofhumanviraldisease(病毒病)thatdamagestheimmunesystem,weake
最新回复
(
0
)