首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序 int f(int n) { if (n==l) return 1; else return f(n-1)+1; } main () { int i,j=0; f
有以下程序 int f(int n) { if (n==l) return 1; else return f(n-1)+1; } main () { int i,j=0; f
admin
2013-02-23
55
问题
有以下程序 int f(int n) { if (n==l) return 1; else return f(n-1)+1; } main () { int i,j=0; for(i=i;i<3;i++) j+=f(i); printf {"%d\n", j ); } 程序运行后的输出结果是
选项
A、4
B、3
C、2
D、1
答案
2
解析
本题考查的知识点是递归函数.通过分析不难写出,f()函数的数学表达式为:
f(n)=1 n=1;
f(n)=f(n-1)+1 n不等于1;
在主函数中for循环执行了两次函数调用f(i)。第一次:i为1,调用f(1)得到返回值1,并把它加到 i中,i的值为1。第二次i为2,调用f(n),根据递归公式可知“f(2)=f(1)+1”,得到返回值2并把它加到i中,j的值为3。所以最后输出的j的值为3,所以4个选项中B正确。
转载请注明原文地址:https://kaotiyun.com/show/AePp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下程序的输出结果是【】。#include<string.h>main(){printf("%d\n",strlen("IBM\n012\1\\"));}
有以下程序:#include<stdio.h>main(){FILE*fp;inti;charch[]="abcd",t;fp=fopen("abc.dat","wb+");fo
若要求定义具有10个血型元素的一维数组a,则以下定义语句中错误的是()。
已定义ch为字符型变量,以下赋值语句中错误的是()。
有定义语句doublda,b;intw;longc;若各变量已正确赋值,则下列选项中正确的表达式是()。
开发大型软件时,产生困难的根本原因是()。
以下程序中,fun函数的功能是求3行4列二维数组每行元素的最大值。请填空。voidfun(int,int,int(*)[4],int*);main(){inta[3][4]={{12,41,36,2
已有定义inta=-2;和输出语句printf("%81x",a);以下正确的叙述是()。
下列对于线性链表的描述中正确的是 ______。
随机试题
下列哪种情况不是骨关节结核病灶清除术的适应证
局部黏膜抗感染的主要免疫球蛋白是
《希波克拉底宣言》中提出了()
天癸的产生主要取决于
患者,女,44岁,急性重症胆管炎,急诊入院,体温39.4℃,血压90/50mmHg,脉搏100次/分钟,右下腹压痛,反跳痛,肌紧张,意识不清,不能诉说其他不适。当前有效的处理办法是
当事人对工程造价发生合同纠纷时,解决方法有()。
下列句子中的成语,使用恰当的有()。
针对同一事件或现象,不同的人会产生不同的情绪体验。如在极度缺水的情况下,对于半杯水,甲觉得“还有半杯水,很高兴”;乙觉得“只有半杯水了,真痛苦”。这一现象反映的情绪特征是()
微机硬件系统中最核心的部件是()。
Effectivereadingrequiresnotonly"readingbetweenthelines,"butalso"writingbetweenthelines."Therearetwoways
最新回复
(
0
)