首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下面程序: #include<iostream> using namespace std; long fib(int n) { if ( n > 2 ) return (fib(n-1)+f
阅读下面程序: #include<iostream> using namespace std; long fib(int n) { if ( n > 2 ) return (fib(n-1)+f
admin
2010-03-29
23
问题
阅读下面程序:
#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)<<end1;
return 0;
{
则该程序的输出结果应该是【 】。
选项
答案
4
解析
本题主要考察C++中递归函数的调用。递归函数即自调用函数,在函数体内部直接或间接的自己调用自己,即函数的嵌套调用是函数本身。递归调用分为直接递归调用和间接递归调用两种形式。
本题程序为求解典型递归数列Fibonacci中任意项值的简化程序(主函数中的调用改成 fib(n),即变成求解任意项值)。主函数通过调用fib()函数,fib()函数内部再通过一个分支结构判断是否进行递归调用或退出递归调用,调用方式为直接递归调用。
主函数通过实参将值3赋给fib()函数的形参n,由于n‘3满足汀分支语句条件,因此函数进行递归调用,即计算fib(2)和fib(1)的值;将2赋给fib()函数的形参后,
由于n=2不满足if分支语句条件,因此程序退出递归,返回2:将1赋给fib()函数的形参后,函数同样返回2。因此函数递归调用的最终结果为返回2+2=4,即fib(3) =4,程序最后输出值为4。
转载请注明原文地址:https://jikaoti.com/ti/COW0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列关于队列的叙述中正确的是()。
下面叙述中正确的是
当变量c的值不为2、4、6时,值为"真"的表达式是()。
有以下函数:intfun(char*x,char*y){intn=0;while((*x==*y)&&*x!=’\0’){x++;y++;n++:}returnn:}函数的功能是()。
有下列程序:#include<stdio.h>/*fun函数的功能是将a所指数组元素从大到小排序*/voidfun(int*a,intn)main(){intt,i,j;{intc[10]={1,2,3,4,5,6,7,8,9,0}
已定义以下函数intfun(int*p){return*p;}fun函数返回值是
if语句的基本形式是:if(表达式)语句,以下关于"表达式"值的叙述中正确的是
以下选项中,值为1的表达式是
以下关于C语言函数参数传递方式的叙述正确的是()。
有以下程序,其中%u表示按无符号整数输出()。main(){unsignedintx=0xFFFF;/*x的初值为十六进制数*/printf("%u\n",x);}程序运行后的输出结果是(
随机试题
Sheehan综合征最常见的原因是
兼有消化性溃疡和抑郁症的高血压患者禁用
类毒素刺激机体后产生的特异性免疫应答物质是
下列关于法制宣传教育的内涵的表述正确的有()。
某一薄层状裂隙发育的石灰岩出露场地,在距地面16m深处以下有一溶洞,洞高H0=2.4m。若按溶洞顶板坍塌自行填塞法对该溶洞的影响进行估算,取石灰岩松散系数K=1.2。试问:地面下不受溶洞坍塌影响的岩层安全厚度H1(m)为下列()项。
钢斜拉桥施工通常采用()。【2015年真题】
连带债务人可以根据其内部约定,就其向债权人清偿债务所超过其应当承担的份额()。
"Iseeyou’vegotabitofwateronyourcoat,"saidthemanatthepetrolstation."Isitrainingoutthere?""No,it’spretty
数据库(DB)、数据库系统(DBS)和数据库管理系统(DBMS)之间的关系是()。
有三个关系R,S和T如下图所示:则由关系R和S得到关系T的运算是
最新回复
(
0
)