首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序: #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
76
问题
有以下程序:
#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全国计算机二级
相关试题推荐
下列叙述中正确的是
若有以下程序#includemain(){ints=0,n;for(n=0;n
下面不属于软件需求分析阶段主要工作的是
下面选项中关于位运算的叙述正确的是
设有如下函数定义intfun(intk){if(k<1)return0:elseif(k=1)return1;elsereturnfun(k-1)+1;}若执行调用语句:n=fun(3);则函数fun总共被调用的次数是
若有定义和语句:inta,b;scanf("%d,%d,",&a,&b):以下选项中的输入数据,不能把值3赋给变量a、5赋给变量b的是
下列与队列结构有关联的是
以下程序函数f的功能是:当flag为1时,进行由小到大排序;当flag为0时,进行由大到小排序voidflintb[],intn,intflag)main(){intid,t;{inta[10]={5,4,
对下列二叉树进行前序遍历的结果是
在数据处理中,其处理的最小单位是()。
随机试题
路由选择协议位于()
关于子宫肌瘤CT表现的描述中,错误的是
关于真菌,下列说法不正确的是
结膜充血是指何种血管充血
民间非营利组织应当采用收付实现制作为会计核算基础。()
根据《中国会计师条例》规定,下列各项中,属于总会计师职责的有( )。
甲公司为在上海证券交易所和美国纽约证券交易所同时上市的公司,该公司审计委员会决定聘请大华会计师事务所(不具有证券、期货业务资格)为其提供内部控制评价服务和内部控制的审计服务,大华会计师事务所仅就甲公司财务报告内部控制的有效性进行评价和审计,并对财务报告内部
下列关于各种类型供应链的说法正确的有()。
从所给的四个选项中,选择最合适的一个填入问号处,使之呈现一定的规律性:
左边给定的是纸盒的外表面,下面哪一项能由它折叠而成?
最新回复
(
0
)