柒丶安 2021-09-19 12:16 采纳率: 50%
浏览 61
已结题

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

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




  • 写回答

4条回答 默认 最新

  • 关注
    #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;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
  • qfl_sdu 2021-09-19 12:21
    关注
    #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;
    }
    
    
    评论
  • qzjhjxj 2021-09-19 12:25
    关注

    供参考:

    #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;
    }
    
    
    评论
  • CSDN专家-link 2021-09-19 12:25
    关注
    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 ;
    }
    
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 10月10日
  • 已采纳回答 10月2日
  • 创建了问题 9月19日

悬赏问题

  • ¥50 burgers方程求逆
  • ¥15 matlab最小二乘法拟合非线性曲线提问
  • ¥15 电脑锁屏时vba运行SAP,excel数据不能复制到SAP
  • ¥50 74LS系列 74LS00 74LS04设计一个RS485电路(关键词-差分)
  • ¥30 各位help写一下代码
  • ¥15 在运行SDEdit模型下载不了
  • ¥15 求51控制l298n驱动的小车中超声波避障怎么写
  • ¥15 电脑连上WIFI却用不了
  • ¥30 MATLAB在RLC电路的固有响应和阶跃响应GUI仿真报告
  • ¥15 hyper-v出现的问题