填空题
以下程序的运行结果是{{U}} 【8】 {{/U}}。
#include <stdio.h>
long fib (int g)
{ switch (g)
{ case 0: return 0;
case 1: case2: return 1;
}
return (fib(g-1)+fib(g-2));
}
main()
{ long k;
k=fib(5);
printf("k=%d/n",k);
}
【正确答案】
1、k=5
【答案解析】[解析] 由题可知fib(0)的值为0,fib(1)和fib(2)的值为1,因此,fib(3)=fib(2)+fib(1) =2;fib(4)=fib(3)+fib(2)=3;fib(5)=fib(4)+fib(3)=5。