请编写函数proc(),它的功能是求Fibonacci数列中小于n的最大的一个数,结果由函数返回。
Fibonacci数列F(n)的定义为
F(0)=O,F(1)=1
F(n)=F(n-1)+F(n-2)
例如,n=500时,函数值为377。
注意:部分源程序给出如下。
请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的花括号中填写所编写的若干语句。
试题程序:
第1题:
编写函数,isValue(),它的功能是求Fibonacci数列中大于t的最小的一个数,结果由函数返回,其中 Fibonacci数列F(n)的定义为:
F(0)=0,F(1)=1
F(n)=F(n-1)+F(n-2)
最后调用函数writeDat(),把结果输出到文件OUTl0.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;
ut = fopen ("OUT10.DAT", "w");
s = jsValue(1O00); printf("% d",s);
fprintf(out, "%d\n", s);
fclose (out);
}
第2题:
编写函数jsValue(int t),它的功能是:求Fibonacci数列中大于t的最小的一个数,结果由函数返回。其中Fibonacci数列F(n)的定义为: F(0)=0,F(1)=1 F(n)=F(n-1)+F(n-2) (n≥2) 最后调用函数writeDat读取l0个数据t,分别得出结果且把结果输出到文件out.dat中。 例如:当t=1000时,函数值为:1597。 注意:部分源程序存在test.c文件中。 请勿改动数据文件in.dat中的任何数据、主函数main和写函数writeDat的内容。
第3题:
函数习题(4):递归方法完成Fibonacci数列前n项
第4题:
请编写一个函数long Fibo(int n), 该函数返回n的Fibonacci数。规则如下:n等于1或者2时,Fibonacci数为1,之后每个Fibonacci数均为止前两个数之和, 即:F(n)=F(n-1)+F(n-2)
注意:清使用递归算法实现该函数。
部分源程序已存在文件test1_2.cpp中。
请勿修改主函数main和其他函数中的任何内容,仅在函数Fibo的花括号中填写若干语句。如n=8时,结果是21。
文件test1_2.cpp清单如下:
include<iostream.h>
corlsh int N=8;
long Fibo(int n);
void main()
{
long f=Fibo(N);
couk<<f<<endl;
}
long Fibo(int n)
{
}
第5题:
用数组做函数参数计算Fibonacci数列前n项