C语言经典编程例子+心得总结(一)

问:任意输入三个数,编程实现对这三个数由小到大进行排序,并将排序后的结果显示在屏幕上。

答:
代码为

#include<stdio.h>
main()
{
	int a,b,c,t;
	printf("请输入a,b,c:\n");
	scanf("%d%d%d",&a,&b,&c);
	if(a>b)							//若a>b则ab互换
	{
		t=a;
		a=b;
		b=t;
	}
	if(a>c)							//若a>c则ac互换
	{
		t=a;
		a=c;
		c=t;
	}
	if(b>c)							//若b>c则bc互换
	{
		t=b;
		b=c;
		c=t;
	}
	printf("排序后的顺序为:%d,%d,%d",a,b,c);
}

心得总结:本题是一个简单的排序,将三个输入的数a,b,c从小到大排序,搞清题目是一个简单的逻辑问题即可,此题虽然不难,却是为以后复杂的排序打下逻辑基础,所以我觉得有必要拿出来做一下。首先是要考虑获得了三个数如何判断这三个数是否是从小到大排序的,如果本来就是这种顺序就没必要再排了,所以我们要先进行判断,若a小于b,b小于c且a小于c则顺序正确,所以若a大于b则ab互换,若a大于c则ac互换,若b大于c则bc互换,且b和c的判断顺序必须放最后,否则会出错。互换的方式即找一个中间变量把x赋给中间变量,再把y赋给x,最后把中间变量赋给y即可。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值