鱼C论坛

 找回密码
 立即注册
查看: 1240|回复: 3

[已解决]四数排序脑壳痛,刚学到分支结构,就来个下马威(╯‵□′)╯︵┻━┻

[复制链接]
发表于 2019-5-5 02:15:17 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
/*输入a,b,c,d四个数并对其排序*/
#include<stdio.h>
int bigger(int x, int y)
{
    return((x>=y)?x:y);
}

int smaller(int x, int y)
{
    return((x<y)?x:y);
}

void main()
{
    int a, b, c, d, x, y, z, w ;
    int x1, y1, z1, w1, x2, y2, z2, w2 ;

    scanf("%d%d%d%d",&a,&b,&c,&d);
    x = bigger(a,b);
    y = smaller(a,b);
    z = bigger(c,d);
    w = smaller(c,d);

    x1 = bigger(a,c);
    y1 = smaller(a,c);
    z1 = bigger(b,d);
    w1 = smaller(b,d);

    x2 = bigger(a,d);
    y2 = smaller(a,d);
    z2 = bigger(b,c);
    w2 = smaller(b,c);

    if (y>=z)
    {
        printf("%d>=%d>=%d>=%d",x,y,z,w);
    }
    else if (w>=x)
    {
        printf("%d>=%d>=%d>=%d",z,w,x,y);
    }
    else if (y1 >= z1)
    {
        printf("%d>=%d>=%d>=%d",x1,y1,z1,w1);
    }
    else if (w1 >= x1)
    {
        printf("%d>=%d>=%d>=%d",z1,w1,x1,y1);
    }
    else if (y2 >= z2)
    {
         printf("%d>=%d>=%d>=%d",x2,y2,z2,w2);
    }
    else if (w2 >= x2)
    {
         printf("%d>=%d>=%d>=%d",z2,w2,x2,y2);
    }
   
   
}
===========================================================
PS E:\Administrator\Documents\Visual Studio 2019> & 'c:\Users\Administrator\.vscode\extensions\ms-vscode.cpptools-0.22.1\debugAdapters\bin\WindowsDebugLauncher.exe' '--stdin=Microsoft-MIEngine-In-j2eztiyu.qz0' '--stdout=Microsoft-MIEngine-Out-rtljik2c.ssw' '--stderr=Microsoft-MIEngine-Error-x1fx3j5m.wgw' '--pid=Microsoft-MIEngine-Pid-1iqaojfl.hkp' '--dbgExe=E:\MingGW\bin\gdb.exe' '--interpreter=mi'
900
900
600
100
900>=900>=600>=100
PS E:\Administrator\Documents\Visual Studio 2019>

PS E:\Administrator\Documents\Visual Studio 2019> & 'c:\Users\Administrator\.vscode\extensions\ms-vscode.cpptools-0.22.1\debugAdapters\bin\WindowsDebugLauncher.exe' '--stdin=Microsoft-MIEngine-In-j0juibej.yfw' '--stdout=Microsoft-MIEngine-Out-uplwpx1u.0fr' '--stderr=Microsoft-MIEngine-Error-y0i2ipp1.aun' '--pid=Microsoft-MIEngine-Pid-31pqvaqo.esm' '--dbgExe=E:\MingGW\bin\gdb.exe' '--interpreter=mi'
100
0
0
3
100>=3>=0>=0
PS E:\Administrator\Documents\Visual Studio 2019>
最佳答案
2019-5-5 04:17:17
两两比较就好了啊
#include<stdio.h>
int main()
{
  int a,b,c,d,e;
  printf("请输入四个数:");
  scanf("%d%d%d%d",&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);
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2019-5-5 04:17:17 | 显示全部楼层    本楼为最佳答案   
两两比较就好了啊
#include<stdio.h>
int main()
{
  int a,b,c,d,e;
  printf("请输入四个数:");
  scanf("%d%d%d%d",&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);
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-5-5 04:52:30 From FishC Mobile | 显示全部楼层
脑子还没转过湾,用了最笨的办法
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-5-5 19:14:29 From FishC Mobile | 显示全部楼层
一个简单的排序用一个一维数组就能完美的决绝了!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-17 03:46

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表