C语言中,对三个数字进行排序

对于三个数字进行排序,我们要类比之前我们学过的交换两个数字的方法。

程序 = 算法 + 语言,编写这个代码就需要考虑算法的过程,语言在之前交换两个数字已经学过。对于程序中或者用户来说,在计算机中输入三个数字a,b,c。

#include<stdio.h>
int main(void)
{
    int a,b,c;
    printf("请输入三个整数,中间用空格隔开:");
    scanf("%d %d %d\n",&a,&b,&c);
    //编写三个数字排序的代码
    printf("%d %d %d\n",a,b,c);
    return 0;
}

1.如果a > b则不需要调换a与b的位置。

        1)若a > c,a与c的位置关系不需要调换,比较b与c的大小关系。若c > b调换b与c的位置关系。排序就是a,c,b。

        2)若a < c,调换a与c的位置关系。排序就是c,b,a。

2.如果a < b则调换a与b的位置,

        1)若a > c,则a与c不调换位置。排序就是b,a,c。

        2)若a < c,则a与c的位置进行调换,然后比较b与c之间的大小关系。同理如上。

大致的思路就是如此。

#include<stdio.h>
int main(void)
{
	int a,b,c,k;
	printf("请输入三个整数(中间用空格隔开):");
	scanf("%d %d %d",&a,&b,&c);
	if(a < b)
		k = a;
		a = b;
		b = k;
	if(a < c)
		k = a;
		a = c;
		c = k;
	if(b < c)
		k = b;
		b = c;
		c = k;
	printf("%d %d %d\n", a, b, c);
}

我采用的软件是Visual C++ 6.0进行调试,本人正在学习c语言课程,如果有任何问题请在评论区留言,欢迎大家批评指正。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值