下面程序的运行结果是:【 】。 int f(int a[] int n) { if(n>1)retu
下面程序的运行结果是:【 】。 int f(int a[],int n) { if(n>1)return a[0]+f(&a[1],n-1); elsel return a[0]; } main() { int aa[3]={1,2,3},s; s=f(&aa[0],3);printf("%d/n",s); }
请帮忙给出正确答案和分析,谢谢!
参考解答
正确答案:6
经过分析将递归函数写成其数学表达式如下:f(&a,n)=a[0+f(&a[1,n-1)n>1f(&a,n)=a[0n=1本题中定义了一个长度为3的数组aa并初始化。接着调用递归函数f,由上面的数学表达式以计算其返回值s=1+2+3=6。
相似问题
简述行政许可的基本原则。
简述行政许可的基本原则。
设有以下定义 struet ss {int info;struet ss *link;}x y z;
设有以下定义 struet ss {int info;struet ss *link;}x,y,z; 且已建立如下图所示链表结构: 请写出删除结点y的赋值语句【 】。请帮忙给出正确答案和分析,谢谢!
以下程序运行后的输出结果是【 】。 main() { int i n[]=10 0 0 0 0};
以下程序运行后的输出结果是【 】。 main() { int i,n[]=10,0,0,0,0}; for(i=1;i<=4;i++) { n[i]=n[i-1]*2+1; printf( "%d ",n[i]); }请帮忙给出正确答案和分析,谢谢!
已有定义如下: struct node {int data; struct node *next;
已有定义如下: struct node {int data; struct node *next; } *P; 以下语句调用malloc函数,使指针p指向一个具有struct node类型的动态存
以下程序运行后的输出结果是【 】。 fun(int x) { if(x/2>0)fun(x/2);
以下程序运行后的输出结果是【 】。 fun(int x) { if(x 2>0)fun(x 2); printf( "%d ",x); } main() {fun(6);}请帮忙给出正确答案和分析,谢谢!
