问答题

请编写一个函数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> consh int N=8; long Fibo(int n); void main() { long f=Fibo(N); couk<<f<<endl; } long Fibo(int n) { }

【参考答案】

long Fibo(int n) { if(n==1)return 1L; else if(n==2) re......

(↓↓↓ 点击下方‘点击查看答案’看完整答案 ↓↓↓)
热门 试题

问答题
使用VC6打开考生文什夹下的工程test1_3。此工程包含一个test1_3.cpp,其中定义了类circle和column,其中column类由circle类protected派生,但两个类的定义并不完整。请按要求完成下列操作,将程序补充完整。(1)定义类circle的保护数据成员r和area,它们都是double型的数据。请在注释“ **1**”之后添加适当的语句。(2)添加类circle的无参数的构造函数,使circle对象的r默认值为0,请在汁释“ **2**”之后添加适当的语句。(3)添加派生类column构造函数的定义,传入的参数为double型的height和radius,并将具分别赋值给数擗成员h和基类的r,请在注释“ **3**”之后添加适当的语句。(4)完成派生类column的成员函数print的定义,使其以格式“r=_area=_”先输出半径r和底面积area,再以格式“h=_vol=_”输出高h和体积vol的值,请在注释“ **4**”之后添加适当的语句。输山结果如下:r=1 area=3.1416h=2 vo1=6.2832注意:除在指定的位置添加语句外,请不要改动程序中的其他语句。源程序文件test1_3.cpp清单如下:#include<iostream.h>const double pi=3.1416;class circle{protected: **1**public: **2**circle(double radius){ r=radius;}void print(){area=r*r*pi;cout<< r= <<r<< << area= <<ared<<endl;}};class column: protected circle{protected:double h;public: ** 3 **void print(){ ** 4 **}};void main(){column col(1.0,2.0);Col.print();}