以下程序的输出结果是 long fun(int n) { long s; if(n==1||n==2)s=2; else s=n-fun(n-1); return s;} main() { printf

admin2009-02-15  42

问题 以下程序的输出结果是    long fun(int n)    { long s;      if(n==1||n==2)s=2;      else s=n-fun(n-1);      return s;}    main()    { printf("%ld\n",fun(3));}

选项 A、1
B、2
C、3
D、4

答案1

解析 该题考查的是递归函数的调用,题中读fun函数进行了递归调用,第1次调用:fun(3)n= 3 s=3-fun(2)第二次调用时:fun(2)n=2 s=2返回第一次调用后,s=3-2=1。
转载请注明原文地址:https://jikaoti.com/ti/5CK0FFFM
0

最新回复(0)