有以下程序: #include int f(int t[],int n); main() { int a[4]:{1,2,3,4),s; s=f(a,2);printf(“%d\n”,s); }

admin2012-08-23  29

问题 有以下程序:
    #include
    int f(int t[],int n);
    main()
    {  int a[4]:{1,2,3,4),s;
       s=f(a,2);printf(“%d\n”,s);
    }
    int flint t[],int n)
    {  if((n>0)&&(n<5))retum t[n+1]+f(t,n-1);
       else return 0;
    }
    程序运行后的输出结果是(    )。

选项 A、4
B、7
C、10
D、6

答案B

解析 本题主要考查的是函数的递归调用,子函数f是一个递归函数,所以主函数中执行f[a,2)时,其执行过程是a[3]+f[a,1)=:a[3]+a[2]+f(a,0)=7。
转载请注明原文地址:https://kaotiyun.com/show/ifPp777K
0

最新回复(0)