例题4-3 比较交换3个实数值,并按序输出

两个数的排序,只需要比较一下,如果第一个比第二个大,交换一下,否则什么都不用做。

三个数的排序 ,可以先将前两个排序,保证第一个比第二个小。

然后将第二个和第三个数排序,保证第二个比第三个小。

经过上面两次排序,保证了第三个是最大的,但不能保证第二个还比第一个大,因为第二次排序的时候可能改变了第二个数。

因此,还要再将前两个数进行排序。最终保证了三个整数从小到大排列。

int main()
{
    double a,b,c;
    cin>>a>>b>>c;

    if(a>b) swap(a,b);
    if(b>c) swap(b,c);
    if(a>b) swap(a,b);

    printf("%.2f %.2f %.2f\n",a,b,c);

    //system("pause");
    return 0;
}
posted @ 2021-01-26 15:40  Dazzling!  阅读(87)  评论(0编辑  收藏  举报