过程的目的就是使得x,y,z,成为递减的顺序
首先判断x,y,如果x,y不是递减,即x
然后判断y和z的顺序,如果y和z已经保证递减顺序,也就是y>=z的话,那么什么也不用做,因为这是x,y,z肯定是递减关系了
如果y
当然所有的交换都要引入临时变量temp
另外,从小到大很简单,只要输出的时候反过来就可以了,本来是顺序输出x,y,z,现在是顺序输出z,y,x
最简单的一种方法,三次比较交换:
#include
#define
SWAP(
a,
b
)
{
t
=
a;
a
=
b;
b
=
t;
}
int
main()
{
int
x,
y,
z,
t;
scanf(
"%d%d%d",
&x,
&y,
&z
);
if
(
x
<
y
)
SWAP(
x,
y
);
/*如果x比y小,那么交换x和y*/
if
(
x
<
z
)
SWAP(
x,
z
);
/*如果x比z小,那么交换x和z*/
if
(
y
<
z
)
SWAP(
y,
z
);
/*如果y比z小,那么交换y和z*/
printf(
"%d
%d
%d\n",
x,
y,
z
);
/*从大到小排列。。。*/
}