C语言编程(对输入数值进行大小排列)

输入3个任意数值,按从大到小排列,
利用if()语句,进行编程。




#include <stdio.h>
int main(int argc, char const *argv[])
{
    int a, b, c;
    scanf("%d%d%d", &a, &b, &c);
    if (a > b && b > c)
        printf("%d %d %d", a, b, c);
    if (b > c && c > a)
        printf("%d %d %d", b, c, a);
    if (c > a && a > b)
        printf("%d %d %d", c, a, b);
    if (c > b && b > a)
        printf("%d %d %d", c, b, a);
    if (b > a && a > c)
        printf("%d %d %d", b, a, c);
    if (a > c && c > b)
        printf("%d %d %d", a, c, b);

    return 0;
}
#include <stdio.h>
int main()
{
    double a,b,c;
    double max,min,mid;
    scanf("%lf %lf %lf",&a,&b,&c);

    if(a > b && a > c)
        max = a;
    else if(b > a && b > c)
        max = b;
    else
        max = c;

    if(a <b && a < c)
        min = a;
    else if(b < a && b < c)
        min = b;
    else
        min = c;
    if(a != max && a != min)
        mid = a;
    if(b != max && b != min)
        mid = b;
    if(c != max && c != min)
        mid = c;
    printf("%lf > %lf > %lf\n",max,mid,min);
    return 0;
}

供参考:

#include <stdio.h>
int main()
{
    int a,b,c,t;
    printf("Please input a,b,c:\n");
    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("The order of the number is:\n");
    printf("%d,%d,%d",c,b,a);    /输出顺序从大到小
    
    return 0;
}

int minmax(int a,int b,int flag)
{
    if(flag == 1)
    {  
        if(a > b)
            return a;
        return b;
    }
    if(a < b)
        return a;
    return b;
}
int main()
{
    int a,b,c,min,max,mid;
    scanf("%d%d%d",&a,&b,&c);
    min = minmax(minmax(a,b,0),c,0);
    max = minmax(minmax(a,b,1),c,1);
    mid = (a+b+c) - min - max;
    printf("大小顺序为:%d %d %d\n",max,mid,min);
    return 0 ;
}