首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序 int fun(int n) { if(n==1)return 1; else return(n+fun(n-1)); } main() { int x; scanf("%d"
有以下程序 int fun(int n) { if(n==1)return 1; else return(n+fun(n-1)); } main() { int x; scanf("%d"
admin
2019-08-18
53
问题
有以下程序
int fun(int n)
{ if(n==1)return 1;
else
return(n+fun(n-1));
}
main()
{ int x;
scanf("%d",&x); x=fun(x);
printf("%d\n",x);
}
执行程序时,给变量X输入10,程序的输出结果是
选项
A、54
B、65
C、45
D、55
答案
D
解析
在C语言中函数可以递归调用,即直接或间接地自己调用自己。本题在函数int fun(int n)的定义中又出现了对函数fun的调用,所以函数fun是递归函数。因而在主函数中调用x=fun(x)时,当输入10赋给变量x时,递归调用的过程为:
fun(10)=10+fun(9)=10+9+fun(8)=10+9++8+fun(7)=10+9++8+7+fun(6)=10+9++8+7+6+fun(6)=0+9++8+7+6+5+fun(4)=10+9++8+7+6+5+4+fun(3)=10+9++8+7+6+5+4+3+fun(2)=10+9++8+7+6+5+4+3+2+fun(1)=10+9++8+7+6+5+4+3+2+l=55
转载请注明原文地址:https://kaotiyun.com/show/yqRp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下数组定义中错误的是()。
设已有定义:floatx;,则以下对指针变量p进行定义且赋初值的语句中正确的是()。
以下选项中,合法的一组C语言数值常量是()。
程序流程图中带有箭头的线段表示的是()。
有以下程序#includemain(){intx=1,y=2,z=3;if(x>y)if(y<z)printf("%d",++z);elseprintf("%d",++y);printf("%d\n",x++);}程序
假定已建立以下链表结构,且指针p和q已指向如图所示的节点:则以下选项中可将q所指节点从链表中删除并释放该节点的语句组是()。
以下程序依次把从终端输入的字符存放到f文件中,用#作为结束输入的标志,则在横线处应填入的选项是#includemain(){FILE*fp;charch;fp=fopen("fname","W");
给定程序MODI1.C是建立一个带头结点的单向链表,并用随机函数为各结点赋值。函数fun的功能是将单向链表结点(不包括头结点)数据域为偶数的值累加起来,并且作为函数值返回。请改正函数fun中指定部位的错误,使它能得出正确的结果。注意:不
已知学生的记录由学号和学习成绩构成,N名学生的数据已存入结构体数组a中。请编写函数fun,函数的功能是:找出成绩最高的学生记录,通过形参指针传回主函数(规定只有一个最高分)。已给出函数的首部,请完成该函数。注意:部分源程序存在文件PROG1.C中
在数据库系统中,用于对客观世界中复杂事物的结构及它们之间的联系进行描述的是()。
随机试题
双扇防火门关闭不严的故障原因主要是闭门器拉力调节不当。()
不良行为主要是通过学习获得的是哪个学派的观点()
发生空气栓塞时,应采取
设备制造过程无论何种原因造成的设计变更,对投资的影响都包括以下()方面。
施工成本核算需计算出施工费用的( ),并根据成本核算对象,采用适当方法,计算出施工项目的总成本和单位成本。
关于免疫策略的叙述不正确的是()
企业本期发生的货币资产的流入,均确认为企业本期的收入。()
一个病人经医生诊断必须截肢才能保住生命,病人要么失去一条腿,要么就有生命危险,这种动机冲突是()。
(2017年江西)关于海洋环境,下列说法错误的是()。
Whatdoyouneedtodoinordertounderstandthelecture?NowtherearefourthingsthatI’mgoingtotalkabout.Thefirstthi
最新回复
(
0
)