首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序 #include<stdio.h> void fun(int n,int *s) { int f1,f2; if(n==1||n==2)*s=1; else { fun(n-1,&f1);
有以下程序 #include<stdio.h> void fun(int n,int *s) { int f1,f2; if(n==1||n==2)*s=1; else { fun(n-1,&f1);
admin
2022-04-02
20
问题
有以下程序
#include<stdio.h>
void fun(int n,int *s)
{
int f1,f2;
if(n==1||n==2)*s=1;
else
{
fun(n-1,&f1);
fun(n-2,&f2);
*s=f1+f2;
}
}
main()
{
int x;
fun(6,&x);
printf("%d\n",x);
}
程序运行后的输出结果是( )。
选项
A、5
B、2
C、3
D、8
答案
D
解析
题意中,函数fun的第二个参数通过指针作为函数返回值,它的功能是通过递归,求得fun(n)的值为fun(n-1)+fun(n-2),由于当n取值为1,2时,值为1。所以可知整个数列如下:1,1,2,3,5,8…,即某一项是前两项之和,所以当n取值为6时,fun(6,*s)返回s的值为3+5=8。本题答案为D选项。
转载请注明原文地址:https://kaotiyun.com/show/Ohkp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序main(){intx=1,y=0,a=0,b=0;switch(x){case1:switch(y){case0:a++;break;case1:b++;break;}case
以下选项中不能用作C程序合法常量的是
有以下程序#includetypedefstructstu{charname[10];chargender;intscore;}STU;voidf(STU*a,STU*b){*b=*a;printf("%s
s1和s2已正确定义并分别指向两个字符串。若要求:当s1所指串大于s2所指串时,执行语句S;则以下选项中正确的是
有以下程序:#include<stdio.h>struetS{inta,b;}data[2]={10,100,20,200};main(){struetSp=data[1];prinff("%d\n",++(p.a));}程序
程序调试的任务是
下面选项中的程序段,没有编译错误的是
有以下函数intfun(char*x,char*y){intn=0:while((*x==*y)&&*x!=’\0’){x++;y++;n++;}returnn;)函数的
有以下程序#include<stdio.h>intfun(){staticintx=1;x+=1:returnx;}main(){inti,s=1;for(i=1;i<=5;i++)s+=fun();printf(
随机试题
火场中防止烟气危害最简单的方法是()。
茶文化结构中的精神文化是茶文化的核心部分。
当社会需求不足时,政府应采取的措施有
《天净沙.秋思》中,概括全篇主题思想的是()
A.完全再生B.瘢痕修复C.两者均有D.两者均无二期愈合
下列有关破伤风病人临床表现的描述中,错误的是
《中华人民共和国民法典》的制定起草工作属于以下哪种规范性法律文件系统化的方式?
在法律上,学校与学生的关系是属于()
对任意的x,y有将f(x,y)变换成g(u,v),试求满足﹦u2﹢v2的常数a,b。
COSTANDBENEFITSOFSOCIALLIFE(1)Manythinkthatthereasonwhysomanyanimalslivewithothersoftheirspeciesistha
最新回复
(
0
)