| 网站首页 | 业界新闻 | 群组 | 交易 | 人才 | 下载频道 | 博客 | 代码贴 | 编程论坛
共有 763 人关注过本帖
标题:c语言 键盘输入3个整数a,b,c,请把这三个数先由小到大输出,然后在由大到小输 ...
只看楼主 加入收藏
Eric123989
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2018-7-12
结帖率:100%
  已结贴   问题点数:15  回复次数:11   
c语言 键盘输入3个整数a,b,c,请把这三个数先由小到大输出,然后在由大到小输出。
测试举例:
输入:
1,5,3

输出:
由小到大:1,3,5
由大到小:5,3,1
2018-07-13 09:53
no1xijin
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:江西
等 级:版主
威 望:19
帖 子:190
专家分:1126
注 册:2015-7-8
  得分:0 
百度一下,你就知道!
2018-07-13 10:19
Eric123989
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2018-7-12
  得分:0 
回复 2楼 no1xijin
#include <stdio.h>
int main()
{
int a, b, c, d;
printf("请输入a,b,c的值:\n");
scanf("%d%d%d",&a,&b,&c);
if(a>=b)
{
d = a;
a = b;
b = d;
}
else if(b>=c)
{
d = b;
b = c;
c = d;
}
printf("从小到大:\n");
printf("%d %d %d\n",a,b,c);
return 0;
}
这是从小到大,怎么把从大到小添加进去啊
2018-07-13 11:51
自学的数学
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:17
帖 子:603
专家分:2418
注 册:2017-11-15
  得分:0 
你这从小到大也不对啊,朋友。错误百出。
2018-07-13 12:44
自学的数学
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:17
帖 子:603
专家分:2418
注 册:2017-11-15
  得分:2 
从小到大:
程序代码:
#include <stdio.h>
int main()
{
  int a, b, c, d;
  printf("请输入a,b,c的值:\n");
  scanf("%d%d%d",&a,&b,&c);
  if(a>b)   
        {    d=a;    a=b;    b=d;    }
    if(a>c)
        {    d=a;    a=c;    c=d;    }
    if(b>c)   
        {    d=b;    b=c;    c=d;    }
  printf("从小到大:\n");
  printf("%d %d %d\n",a,b,c);
  return 0;
}
2018-07-13 12:47
自学的数学
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:17
帖 子:603
专家分:2418
注 册:2017-11-15
  得分:13 
从小到大和从大到小:
程序代码:
#include <stdio.h>
int main()
{
  int a, b, c, d;
  printf("请输入a,b,c的值:\n");
  scanf("%d%d%d",&a,&b,&c);
  if(a>b)   
        {    d=a;    a=b;    b=d;    }
    if(a>c)
        {    d=a;    a=c;    c=d;    }
    if(b>c)   
        {    d=b;    b=c;    c=d;    }
  printf("从小到大:\n");
  printf("%d %d %d\n",a,b,c);
   if(a<b)   
        {    d=a;    a=b;    b=d;    }
    if(a<c)
        {    d=a;    a=c;    c=d;    }
    if(b<c)   
        {    d=b;    b=c;    c=d;    }
  printf("从大到小:\n");
  printf("%d %d %d\n",a,b,c);
  return 0;
}
2018-07-13 12:50
Eric123989
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2018-7-12
  得分:0 
回复 4楼 自学的数学
但是执行无误啊
2018-07-13 13:59
自学的数学
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:17
帖 子:603
专家分:2418
注 册:2017-11-15
  得分:0 
回复 7楼 Eric123989
就楼主的代码,你多试几个数就知道了,比如:
54 45 14
54 14 45
14 54 45
14 45 54
等等。。
2018-07-13 14:46
zysh
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2018-7-9
  得分:0 
提示一下,可以用经典的三种算法:冒泡排序,选择排序,插入排序.
2018-07-13 15:09
nosnoy
Rank: 8Rank: 8
来 自:mcu
等 级:蝙蝠侠
威 望:8
帖 子:439
专家分:832
注 册:2016-9-17
  得分:0 
回复 3楼 Eric123989
#include <stdio.h>
int main()
{
int a, b, c, d;
printf("请输入a,b,c的值:\n");
scanf("%d%d%d",&a,&b,&c);
if(a>=b)
{
d = a;
a = b;
b = d;
}
else if(b>=c)
{
d = b;
b = c;
c = d;
}
printf("从小到大:\n");
printf("%d %d %d\n",a,b,c);
return 0;
}
这是从小到大,怎么把从大到小添加进去啊


缺少当a>b的同时a>c的情况
[code]
当然你可以这么写
max=a>b?a>c?a:c:b>c?b:c;
min=a<b?a<c?a:c:b<c?b:c;
ms =a+b+c-max-min;

电闪雷鸣之际 ,当心无杂念,安心渡劫
                                         -18.06.21
2018-07-13 15:39







关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.026888 second(s), 8 queries.
Copyright©2004-2018, BCCN.NET, All Rights Reserved