考虑以下 C函数定义。
int Trial (int a, int b, int c)
{
if ((a >= b) && (c < b) return b;
else if (a>=b) return Trial(a, c, b);
else return Trial(b, a, c);
}
函数试用:
(A)求 a、b 和 c 的最大值
(B)找出 a、b 和 c 的最小值
(C)找出 a、b 和 c 的中间数
(D)以上都不是答案: (D)
解释: Trial (a,b,c) 返回 a、b 和 c 的中间元素,但不返回 a、b 和 c 的中间元素。但是如果a = b = c,则无限循环。
所以,选项(D)是正确的。
这个问题的测验