思维挑战3:排序

思维挑战3:排序

我们如何从键盘任意输入3个数,并将这3个数从大到小排序?
第一种我们可以用一个比较笨的方法依次比较,如:

if(a>=b && b>=c)
    printf("%d %d %d",a,b,c);

但是这种方法过于直接,我们介绍一种“换位法”。
即,分别比较 a ,b 与 a ,c的大小将最大的数放在 a 中,同里比较 b ,c 。

//C027
#include <stdio.h>
#include <stdlib.h>
int main()
{
    int a,b,c,t;
    scanf("%d %d %d",&a,&b,&c);
    if(a<b)
    {
        t=a;
        a=b;
        b=t;
    }
    if(a<c)
    {
        t=a;
        a=c;
        c=t;
    }
    if(b<c)
    {
        t=b;
        b=c;
        c=t;
    }
    printf("%d %d %d",a,b,c);
    system("pause");
    return 0;
}
发布了33 篇原创文章 · 获赞 2 · 访问量 967

猜你喜欢

转载自blog.csdn.net/Btbsja/article/details/104311898