下面程序的输出结果是什么? (急!在线等,哪位高人能指点下啊)

来源:百度知道 编辑:UC知道 时间:2024/05/10 19:26: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,c=5,d,e,f;
d=f1(a,b);d=f1(d,c);
e=f2(a,b);e=f2(e,c);
f=a+b+c-d-e;
printf("%d,%d,%d\n",d,f,e);}

这道题哪为高手能帮忙解答下啊,困扰了我好几天,实在是不会.麻烦高人指点下,请帮帮小弟吧..(麻烦写出过程,感谢.不甚感谢)

5,4,3

int f1(int x,int y)
{return x>y?x:y;} //如果x>y,返回x,否则返回y
int f2(int x,int y)
{return x>y?y:x;} //如果x>y,返回y,否则返回x

main()
{int a=4,b=3,c=5,d,e,f;
d=f1(a,b);d=f1(d,c); //d=4;d=5;
e=f2(a,b);e=f2(e,c); //e=3;e=3;
f=a+b+c-d-e; //f=4+3+5-5-3=4
printf("%d,%d,%d\n",d,f,e);}

输出结果:5,4,3

int f1(int x,int y)
{return x>y?x:y;}
返回两个数的最大值
int f2(int x,int y)
{return x>y?y:x;}
返回两个数的最小值
d=f1(a,b);d=f1(d,c);
e=f2(a,b);e=f2(e,c);
结果d=4,d=5,e=3,e=3;
最后d=5,e=3
f=4

所以输出结果为5,4,3