以下程序的输出结果为( )#includemain( ){int x=0;sub(&x,8,1):printf("%d\n",x);}sub(int *a,int n,int k){if(k

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/09 18:27:09
以下程序的输出结果为( )#includemain( ){int x=0;sub(&x,8,1):printf(

以下程序的输出结果为( )#includemain( ){int x=0;sub(&x,8,1):printf("%d\n",x);}sub(int *a,int n,int k){if(k
以下程序的输出结果为( )
#include
main( )
{
int x=0;
sub(&x,8,1):
printf("%d\n",x);
}
sub(int *a,int n,int k)
{
if(k

以下程序的输出结果为( )#includemain( ){int x=0;sub(&x,8,1):printf("%d\n",x);}sub(int *a,int n,int k){if(k
最终会输出7,这是一个递归调用.首先第一次调用sub函数n=8k=1,然后第二次n=4,k=2然后第三次n=2,k=4然后不满足if的条件执行*a+=k;x=4然后返回到第二次执行的sub函数执行*a+=k;x=6(4+2)然后到第一次执行的sub函数x=7(4+2+1)