下列程序的输出结果是( )。 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,e=5,

admin2013-02-23  36

问题 下列程序的输出结果是(    )。    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,e=5,d=2,e,f,g;         e=f2(f1(a,b),f1(e,d));         f=f1(f2(a,b),f2(e,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

答案1

解析 根据函数int f1(int x,int y){return x>y?x:y;)和int f2(int x,int y){return x>y?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)=4,f=f1(3,2)=3,g=4+3+5+2-4-3=7。
转载请注明原文地址:https://kaotiyun.com/show/MlPp777K
0

最新回复(0)