c++中四个数排列问题

想要问一个入门的排列小问题,请各路大神指点迷津🙏🙏🙏
#include<stdio.h>
void main()
{
int a,b,c,d,e;
printf(“请分别输入四个数:\n”);
scanf("%d%d%d%d",&a,&b,&c,&d);
printf(“原顺序: %d %d %d %d\n”,a,b,c,d);
if(a<b)
{
e=a;
a=b;
b=e;
}
if(a<c)
{
e=a;
a=c;
c=e;
}
if(a<d)
{
e=a;
a=d;
d=e;
}
if(b<c)
{
e=b;
b=c;
c=e;
}
if(b<d)
{
e=b;
b=d;
d=e;
}
if(c<d)
{
e=c;
c=d;
d=e;
}
printf(“按小到大排序 %d %d %d %d\n”,d,c,b,a);
}
看看复合吗
a中永远是最大值 b是老二 c是老三 d是老四
这是程序的思路
假设a=1
b为2
c为3
d为4
那么a的前三个if中,赋给a了不就三个值了吗?分别为234,再运行到给b,给b又赋了两个值34,给c又赋了一个4,怎么得到的从小到大的排列顺序呢?
求解求解🙏🙏🙏🙏🙏🙏

为什么不放在数组里排序,这样太不方便了

现在你可以自己解答了🥺🥺🥺