首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序: void f(int a[],int i,int j) { int t; if(i<j) { t=a[i];a[i]=a[j];a[j]=t; f(a,i+1,j-1); } } mai
有以下程序: void f(int a[],int i,int j) { int t; if(i<j) { t=a[i];a[i]=a[j];a[j]=t; f(a,i+1,j-1); } } mai
admin
2013-02-23
25
问题
有以下程序: void f(int a[],int i,int j) { int t; if(i<j) { t=a
;a
=a[j];a[j]=t; f(a,i+1,j-1); } } main() { int i,aa[5]={1,2,3,4,5}; f(aa,0,4); for(i=0;i<5;i++) printf("%d,",aa
); printf("\n"); } 执行后输出结果是( )。
选项
A、5,4,3,2,1,
B、5,2,3,4,1,
C、1,2,3,4,5,
D、1,5,4,3,2,
答案
1
解析
在C语言中所谓函数的递归是指在调用一个函数的过程中,又出现了直接或间接调用该函数本身,直接调用该函数本身的称为函数递归,而间接调用该函数称为函数的间接递归调用。由程序可以看出函数f(a,i,j)为一递归函数,其功能是当i<j时,将数组中的元素a
和a[j]交换,然后再调用函数f(a,i+1,j-1),将数组中a[i+1]和a[j--]交换,这样一直递归到数组下标i=j,可见该递归函数的作用是使数组中首尾元素依次互换。主函数中定义了一个长度为5的数组aa并初始化,然后调用f(a,0,4),将数组a中的元素依次互换,故最后for循环输出的数组aa中各元素的值为5、4、3、2、1,所以,4个选项中选项A符合题意。
转载请注明原文地址:https://kaotiyun.com/show/Y4Pp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
在数据流图(DFD)中,带有名字的箭头表示______。
下列不属于软件调试技术的是______。
有以下函数: fun(char*a,char*b) { while((*a!=’\’0 & &(*b!=’\0’) & &(* a = * b)) {a++;b++;} return(*a-*b); } 该函数的功能是
用以下语句调用库函数malloc,使字符指针st指向具有11个字节的动态存储空间,请填空。st=(char*)【】;
以下叙述中错误的是()
模块独立性是软件模块化所提出的要求,衡量模块独立性的度量标准是模块的()
在面向对象方法学中,直接反映了用户对目标系统的要求的模型是【】。
在下列几种排序方法中,要求内存量最大的是______。
下列不属于软件工程的3个要素的是
十进制数111用八位二进制数表示为【】。
随机试题
研磨时,为减小工件表面粗糙度值,可加大研磨压力。( )
如何提高用电设备的自然功率因数?
患者,女性,38岁,已婚。2年来常感下腹部隐痛不适,12小时前突起转移性右下腹痛,伴恶心、呕吐、发热,查右下腹明显压痛、反跳痛、肌紧张。血常规:WBC16×109/L,N0.88。尿常规无特殊异常。该患者诊断为急性化脓性阑尾炎并腹膜炎,手术后第4天出现
甲公司签发了一张银行承兑汇票交付给乙公司,付款行进行了承兑,乙公司将汇票背书给丙公司,丙公司将汇票背书给丁公司,丁公司将丙公司的签章涂销,下列说法正确的有:()
(),是指中央银行为了影响货币供应量、市场利率而在金融市场上公开买卖有价证券的政策措施。
下列适用于砂砾石地基处理的方法有()。
虎丘有“吴中第一名胜”之称。()
下列不属于社会保障基金特征的是()。
结合材料回答问题:关于中国共产党的成立,毛泽东有过许多精辟的论述,其中影响最大的有三句话,分别是:“其作始也简,其将毕也必巨”;“自从有了中国共产党,中国革命的面目就焕然一新了”;“中国产生了共产党,这是开天辟地的大事变”。(注:“作始
Weallknowthatitisveryhardto______himtogivehisplanup.
最新回复
(
0
)