首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有下列程序 #include<stdio.h> int f(int x) { if(x<2) return 1; return x*f(x-1)+(x-1)*f(x-2); } main() { int y; y
有下列程序 #include<stdio.h> int f(int x) { if(x<2) return 1; return x*f(x-1)+(x-1)*f(x-2); } main() { int y; y
admin
2022-04-02
60
问题
有下列程序
#include<stdio.h>
int f(int x)
{
if(x<2)
return 1;
return x*f(x-1)+(x-1)*f(x-2);
}
main()
{
int y;
y=f(4);
printf("%d\n",y);
}
程序执行后的输出结果是( )。
选项
A、11
B、43
C、57
D、53
答案
D
解析
函数f是一个递归函数,当x>=2时,递归调用自身,返回值为:x*f(x-1)+(x-1)*f(x-2);当x<2时,返回值为1。main函数中,调用函数f传入4,所以y的值是f(4)。f(4)等价于4*f(3)+3*f(2);f(3)等价于3*f(2)+2*f(1);f(2)等价于2*f(1)+1*f(0);f(0),f(1)等价于1。综上:f(2)等于3,f(3)等于11,f(4)等于53。本题答案为D选项。
转载请注明原文地址:https://www.kaotiyun.com/show/Lhkp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序:#include#defineN4voidfun(inta[][N],intb[]){inti;for(i=0;i<N;i++)b[i]=a[i][i]-a[i][N-1-i];}main(){intx[N][N]={{1,2,
假定已建立以下链表结构,且指针p和q已指向如图所示的节点:则以下选项中可将q所指节点从链表中删除并释放该节点的语句组是
下列叙述中错误的是
下面结构体的定义语句中,错误的是
有以下函数intfun(char*x,char*y){intn=0:while((*x==*y)&&*x!=’\0’){x++;y++;n++;}returnn;)函数的
下列选项中,不属于模块间耦合的是()。
有以下程序#includeintfun(char*s){char*p=s;while(*p!=0)p++;return(p-s);}main(){printf("%d\n",fun("good
下列叙述中错误的是()。
设有如下关系表:则下列操作中正确的是
程序调试的任务是()。
随机试题
下列不符合产前诊断适应证的是
以不正当手段取得医师执业证书的
下列有关标准差系数的叙述,正确的说法有()。
特殊风险包括()。
下列关于经济业务会计计量属性的表述中,正确的有()。
在MMPI-2新增加的效度量表中,TRIN是()的英文缩写。
(2020年国考)下列言论中涉及的人才选拔制度,按出现顺序先后排列正确的是()。①学通行修,经中博士②宗师非有军功论,不得为属籍③九品访人,唯问中正④风吹金榜落凡世,三十三人名字香
Whichdoesthewomanlikebest?
GeorgeOrwell’sNineteenEighty-fourwasfarmoreprescientthananypersonwhogrewupinthemiddledecadesofthe20thcentur
Myuncleisquitewornoutfromyearsofhardwork.Heisnolongertheman______hewasfifteenyearsago.
最新回复
(
0
)