问题
单项选择题
下列程序的输出结果是( )。
int f1(int x, int y)return x>y x: y;
int f2(int x, int y)return x>y y: x;
main()
int a=4, b=3, c=5, d=2, e, f, g;
e=f2(f1(a, b), f1(c, d));
f=f1(f2(a, b), f2(c, d));
g=a+b+c+d-e-f;
printf("%d, %d, %d\n", e, f, g);
A.4,3,7
B.3,4,7
C.5,2,7
D.2,5,7
答案
参考答案:A
解析: 根据函数的定义可知,如果x>y成立,则函数f1返回x的值,函数f2返回y的值。所以f1(a, b)=4, f1(c, d)=5, f2(a, b)=3, f2(c, d)=2, 故e=f2(4, 5)=4, f=f1(3, 2)=3, g=4+3+5+2=4=3=7。