首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序 int fun(int n) { if(n==1)retum 1; else retum(n+fun(n-1)); } main() { int x; scanf("%d",&x);x=fun(x);printf(
有以下程序 int fun(int n) { if(n==1)retum 1; else retum(n+fun(n-1)); } main() { int x; scanf("%d",&x);x=fun(x);printf(
admin
2020-07-28
62
问题
有以下程序
int fun(int n)
{ if(n==1)retum 1;
else
retum(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)=10+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+1=55
转载请注明原文地址:https://kaotiyun.com/show/en3p777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下不正确的定义语句是()。
运行下面的程序,输入字符串“MicrosoftVisualStudio”,则程序的执行结果是()。#include<stdio.h>main(){charChr[20];scanf(’’%s’’,&Ch
两次运行下面的程序,如果从键盘上分别输入3和2,则输出结果是()。#include<stdio.h>main(){intx;scanf(’’%d’’,&x);if(x++>2)pfintf(’’
以下对C语言中联合类型数据的正确叙述是()。
给定程序MODI1.C是建立一个带头结点的单向链表,并用随机函数为各结点赋值。函数fun的功能是将单向链表结点(不包括头结点)数据域为偶数的值累加起来,并且作为函数值返回。请改正函数fun中指定部位的错误,使它能得出正确的结果。注意:不要改动ma
函数fun的功能是:根据所给的年、月、日,计算出该日是这一年的第几天,并作为函数值返回。其中函数isleap用来判别某一年是否为闰年。例如,若输入:200851,则程序输出:2008年5月1日是该年的第122天。请在程序的下划线处填
给定程序MODI11.C中函数fun的功能是:逐个比较p、q所指两个字符串对应位置中的字符,把ASCII值大或相等的字符依次存放到c所指数组中,形成一个新的字符串。例如,若主函数中a字符串为:aBCDeFgH,主函数中b字符串为:ABcd,则c中
若函数调用时的实参为变量时,以下关于函数形参和实参的叙述中正确的是
以下叙述中错误的是
软件生命周期是指
随机试题
发生青霉素过敏反应,病人最早出现的症状是
子宫由不协调收缩,形成环行狭窄,胎盘已完全剥离,被阻于环行狭窄之上方由于子宫蜕膜层发育不良或完全缺如,胎盘绒毛直接植入子宫肌层
一位心脏停止的患者到了急诊室,辅助通气(30次/分)心脏复苏进行中,气管插管已置入,静脉通路已建立,下一步最适合的药物治疗是
沥青针入度试验,要求25℃条件下标准针及附件总质量为()。
设备监理工程师在索赔中可能处于()的地位。
渠道在勘测设计阶段的主要测量内容有()等。
买方应按合同规定的开证时间填写开证申请书并办理开证手续,开证行对开证申请书审核无误后,收取(),按开证申请书的要求开出信用证。
下列关于个人抵押授信贷款的表述中,错误的是()。
记入交易账户的头寸应当具有明确的头寸管理政策和程序,包括()。
Whatisthenoticeabout?
最新回复
(
0
)