首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序: #include <iostream> using namespace std; long fib( int n ) { if ( n > 2 ) return ( fib( n - 1 ) +
有以下程序: #include <iostream> using namespace std; long fib( int n ) { if ( n > 2 ) return ( fib( n - 1 ) +
admin
2010-06-06
85
问题
有以下程序:
#include <iostream>
using namespace std;
long fib( int n )
{
if ( n > 2 )
return ( fib( n - 1 ) + fib( n - 2 ) );
else
return 2;
}
int main ()
{
cout<<fib( 3 )<<endl;
return 0;
}
则该程序的输出结果应该是______。
选项
答案
4
解析
本题主要考查C++中递归函数。递归函数即自调用函数,在函数体内部直接或间接的自己调用自己,即函数的嵌套调用是函数本身。递归调用分为直接递归调用和间接递归调用两种形式。本题程序为求解典型递归数列Fibonacci数列中任意项值的简化程序(主函数中的调用改成fib(n)即变成求解任意项值)。主函数通过调用fib()函数,fib()函数内部再通过一个分支结构判断是否进行递归调用或退出递归调用,调用方式为直接递归调用。主函数通过实参将值3赋给fib()函数的形参n,由于n=3满足if分支语句条件,因此函数进行递归调用,即计算fib(2)和fib(1)的值;将2赋给fib()函数的形参后,由于n=2不满足if分之语句条件,因此程序退出递归,返回2;将1赋给fib()函数的形参后,函数同样返回2。因此函数递归调用的最终结果为返回2+2=4,即fib(3)=4,程序最后输出值为4。
转载请注明原文地址:https://kaotiyun.com/show/35jp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
给定程序中,函数fun的功能是:统计形参S所指字符串中数字字符出现的次数,并存放在形参t所指的变量中,最后在主函数中输出。例如,形参S所指的字符串为:abcdef35adgh3ksdf7。输出结果为:4。请在程序的下划线处填入正确的内容并把下划线
若有定义:typedefint*T;Ta[10];则a的定义与下面哪个语句等价()。
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,它的功能是:把高于等于平均分的学生数据放在b所指的数组中,高于等于平均分的学生人数通过形参n传回,平均分通过函数值返回。注意:部分源程序在文件PROG1.
有两个关系R、S如下:由关系R通过运算得到关系S,则所使用的运算为()。
在下列叙述中,错误的是()。
给定程序中,函数fun的功能是将带头结点的单向链表逆置。即若原链表中从头至尾结点数据域依次为:2、4、6、8、10,逆置后,从头至尾结点数据域依次为:10、8、6、4、2。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
以下叙述中不正确的是()。
以下叙述中不正确的是()。
数据库设计中反映用户对数据要求的模式是()。
交换两个变量的值,不允许用临时变量,应该使用下列()位运算符。
随机试题
汽车整车企业应配备与其所承修车型相适应的()等工量具。
交一直一交变频调速系统有何优缺点?应用前景如何?
器官移植患者急性排斥反应的主要原因是
乳房Paget病是指
锅炉事故的主要事故类型有水击事故、___________锅炉结渣等。
对于分离交易的可转换公司债券,发行后累计公司债券余额不得高于期末净资产额的30%。( )
证券发行的最后环节是将证券委托给专门的中介机构。()
1,4,27/4,(),125/16,27/4
HowWeFormFirstImpression1Weallhavefirstimpressionofsomeonewejustmet.Butwhy?Whydoweformanopinionabou
Whenaninventionismade,theinventorhasthreepossiblecoursesofactionopentohim:hecangivetheinventiontotheworld
最新回复
(
0
)