问题 单项选择题

下列程序的输出结果是( )。 int f1(int x,int y){return x>yx:y;} int f2(int x,int y){return x>yy: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

解析: 根据函数int f1(int x,int y){return x>yx:y;}和int f2(int x,int y){return x)>y:x;}的定义可知,如果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),f=f1(3,2)=3,g=4+3+5+2-4-3=7。

单项选择题 A3型题
判断题