分析:我们先认为x是最小的,然后跟y比较,如果x>y,直接进行下一步,如果x<y,将y的值赋给x。
接着x与z比较,若x>z,则进行下一步,若x<z,将z的值赋给x,保证x最大。
再比较y与z,若y>z,进行下一步,若y<z,将z的值赋给y。
if(x<y)
{
t=x;
x=y;
y=t;
}
if(x<z)
{
t=x;
x=z;
z=t;
}
if(y<z)
{
t=y;
y=z;
z=t;
}
整体代码:
#include<stdio.h>
void main()
{
int t,x,y,z;
printf("请输入xyz的值:");
scanf("%d%d%d",&x,&y,&z);
if(x<y)
{
t=x;
x=y;
y=t;
}
if(x<z)
{
t=x;
x=z;
z=t;
}
if(y<z)
{
t=y;
y=z;
z=t;
}
printf("%d%d%d",z,y,x);
}
最后一行代码,输出z,y,x,因为前面保证了x最大,z最小,所以输出为从小到大。
若将z,y,x改为x,y,z,即可输出从大到小的数。