c语言对三个数字进行排序,[编程入门]三个数字的排序-题解(C语言代码)

解题思路:据题目要求,按从小到大排序,那么就需要得到最大值,最小值以及中间值才能排序。也就是说要让电脑知道,什么是最大,什么是最小然后再来排序。

大小的比较有做差法(a-b>0),做商法(a\b>1)等等……

首先我们先做简单的,求最大值和最小值。

做题做的多的可能立马就把      min=(a

但是我注意到一点,就是中间的值较为难求,这也是这里最难的地方(大概?)

一共就3个数字,我们要就事论事,既然最大值和最小值都十分的好求,那么为什么不能利用(中间值)=a+b+c-最大值-最小值    来求出中间值呢?这样不香吗?

注意事项:不要把;和:混淆了,不然很难看出什么地方错误了。

参考代码:

#include

int main()

{

int a,b,c,x1,x2,x3;

scanf("%d%d%d",&a,&b,&c);

x1=(a

x3=(a>b?a:b)>c?(a>b?a:b):c;

x2=a+b+c-x1-x3;

printf("%d %d %d",x1,x2,x3);

}

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值