首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有下列程序 #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
61
问题
有下列程序
#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://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,
有以下程序,程序运行后的输出结果是voidfun(int*p1,int*p2,int*s){s=(int*)malloc(sizeof(int));*s=*p1+*(p2++);}main(){inta
以下叙述正确的是
有三个关系R、S和T如下:则由关系R和S得到关系T的操作是
软件详细设计产生的图如下,该图是
有以下函数intfun(char*s){char*t=s;while(*t++);return(t-s);)该函数的功能是
在软件开发中,需求分析阶段产生的主要文档是( )。
下列选项中,不属于模块间耦合的是()。
下列说法不正确的是()。
随机试题
Whichsymbolshouldreplacethequestionmark?
青霉素钠的检查项目不包括
辅助检查为下列哪项亦有助于诊断
27岁,初孕妇。妊娠38周,患重度妊娠高血压综合征,昨晚突然出现阴道流血伴下腹痛,最可能的诊断应是
下列各项,属于我国会计法律制度构成范围的是()。
A公司以一项无形资产交换B公司一项可供出售金融资产,该交易具有商业实质。A公司换出无形资产的原值为1850万元,累计摊销为900万元,公允价值1000万元,公允价值等于计税价格,营业税税率为5%。A公司另向B公司支付补价5万元。另以银行存款支付换人可供出
3,4,6,8,12,()。
马克思通过分析剩余价值的生产、积累、流通以及分配,揭示了剩余价值的运动规律,创立了剩余价值理论。剩余价值理论
在对称密码体制中,()是相同的。
Theatmosphere,anarrowbandofgasessurroundingtheEarth,ismaintainedbygravitationalpull.
最新回复
(
0
)