首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序: #include<stdio.h> int fun(int a,int b){if(b==0)return a; else return(fun(--a,--b)); } main() {printf("%d\n",fun(4,2));} 程
有以下程序: #include<stdio.h> int fun(int a,int b){if(b==0)return a; else return(fun(--a,--b)); } main() {printf("%d\n",fun(4,2));} 程
admin
2020-11-27
95
问题
有以下程序:
#include<stdio.h>
int fun(int a,int b){if(b==0)return a;
else return(fun(--a,--b));
}
main()
{printf("%d\n",fun(4,2));}
程序运行后的输出结果是( )。
选项
A、1
B、2
C、3
D、4
答案
B
解析
本题重点考察函数的递归调用;题目中给出的fun()函数直接调用了自身,所以是一个递归函数。其功能是:当参数b为0时,返回参数a的值,否则返回fun(--a,--b)的值。从这里可以看出,当b不断递减时,8也不断递减,直到b为0时返回a的值。那么a递减的总值就是b原来的值。所以整个递归函数的作用就是返回a-b的值。因此B选项正确。
转载请注明原文地址:https://kaotiyun.com/show/de3p777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
数据字典(DD)所定义的对象都包含于
关于数据库管理阶段的特点,下列说法中错误的是
若有定义语句:chars[10]="1234567\0\0";,则strlen(s)的值是
下列对于软件测试的描述中正确的是
我们所写的每条C语句,经过编译最终都将转换成二进制的机器指令。关于转换以下说法错误的是
我们所写的每条C语句,经过编译最终都将转换成二进制的机器指令。关于转换以下说法错误的是
软件调试的目的是
设二叉树的前序序列为ABDEGHCFIJ,中序序列为DBGEHACIFJ。则按层次输出(从上到下,同一层从左到右)的序列为
在数据处理中,其处理的最小单位是()。
数据处理的最小单位是()。
随机试题
在熬制沥青时,沥青装锅量不得超过锅容量的2/3。
Wouldyouplease______thepaperformeandseeifthereareanyobviousmistakes?
Itwasacaseofemergency.Thefour-year-oldgirlawokeandsmelledsmoke.Shecouldn’twakehermother,soshedialed"zero".
胆囊未见液腔回声,可探及6cm×5cm形态不规则的低回声不均匀实性肿块,内见多发强回声团伴声影,肿块内测得高速动脉样血流信号,肿块与肝床界限不清。最可能的诊断是
血红蛋白尿的外观特点呈
下列四个关于刑事诉讼中的法定期间的说法,表述正确的是:
下列项目中,属于备查账簿的有( )。
对基金投资人进行风险承受能力调查,应当从调查结果中了解到基金投资人的情况不包括()。
《行政许可法》规定:公民、法人或者其他组织依法取得的行政许可受法律保护,行政机关不得擅自改变已经生效的行政许可。这条规定体现了()。
逐底竞争在竞争激烈的环境下,为了寻找最高回报率,竞争参与者以牺牲道德、触犯法则的代价,换取更大利益。根据上述定义,下列不属于逐底竞争的是:
最新回复
(
0
)