首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有下列程序 #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
26
问题
有下列程序
#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://jikaoti.com/ti/JOd0FFFM
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有三个关系R、S和T如下:则由关系R和S得到关系T的操作是( )。
若有以下程序#include#includetypedefstructstu{charname[10],gender;intscore;}STU;voidf(char*p){strcpy(p,"Qian");}main(){STUa={"
有以下程序main(){inti=5;do{if(i%3=1)if(i%5==2){printf("*%d",i);break;}i++;}while(i!=0);printf("\n"),}程序的运行结果是
以下叙述中正确的是
有以下程序:#include<stdio.h>main(){inta=6,b=7,m=1;switch(a%2){case0:m++;break;case1:m++:swi
在数据库系统中,用于对客观世界中复杂事物的结构及它们之间的联系进行描述的是()。
软件需求规格说明书在软件开发中的作用不包括()。
下面不属于软件开发阶段任务的是
程序调试的任务是()。
关于C语言程序的下列说法中,正确的是()。
随机试题
《左传》主要记载了当时游说权谋之士的斗争、谋划和说辞。()
A.泻下通便,清肝,杀虫B.泻下通便,行水消胀C.泻下逐水,杀虫D.行气利水,杀虫E.泻热通便,润燥软坚,清火消肿芦荟的功效是
下列肾血管疾病引起急性肾衰竭应除外
适用于尾水较深,流量变化范围较小,水位变幅较小,或有排冰、漂木要求的情况,且一般不需要作护坦的消能方式有()。
会计账簿按用途不同,分为( )、分类账簿、备查账簿等。
在会计核算中产生权责发生制和收付实现制两种记账基础的会计基本假设是()。
下列关于一般公司债券发行的表述中,正确的有()。
古代把每月的第一日叫()。
2016年上半年,北京市六大高端产业功能区(以下简称“六高”)规模以上法人单位实现收入28811.4亿元,占全市的比重超过五成(51.5%),较上年同期提高2.9个百分点。其中,工业实现收入占全市工业的比重超过六成(62.4%),较上年同期提高2.3个百分
在Telnet中,程序的______。
最新回复
(
0
)