C语言中怎么把三个整数从小到大排列

Python016

C语言中怎么把三个整数从小到大排列,第1张

原理就是运用冒泡算法,把最大的数浮在最上面,而小的数就下沉,最后就输出。

方法如下:

分析:我们想办法把最小的数放到x上,先将x与y进行比较,如果x>y则将x与y的值进行交换,

然后再用x与z进行比较,如果x>z则将x与z的值进行交换,这样能使x最小。

1.从控制台读入三个数

2.实现三个数从小到大排序:

(1)将第一个数作为最小数,依次和第二,三个数进行比较。两次比较重如果有任意一个比第一个小,则将两个数交换

(2)在(1)步后,得到第一个数为最小数。再将第二个数与第三个数比较大小后即可实现三个数从小到大排序。

拓展资料

两种常用排序方法:

1.选择排序法:从一列数中,选择第一个作为最小数,依次和后面的数进行比较。如有比第一个数小的数,则交换两个数。最后排到该列数都倒数第二个时,这列数就从小到大排好了顺序。

2.冒泡排序法:思路与选择排序法一致。不同的是,冒泡排序将第一个作为最大数,然后再和该数后的数进行比较。

用C语言编写通过if将3个数排序:

#include<stdio.h>/*函数头:输入输出头文件*/

void main()/*空类型:主函数*/

{

inta,b,c,t/*定义变量的数据类型为整型*/

printf("输入3个数,中间用空格隔开:")/*输出文字提示*/

scanf("%d%d%d",&a,&b,&c)/*输入3个数字*/

if(a<b)/*判断a是否小于b*/

{t=aa=bb=t}/*是,则a、b的值互换*/

if(a<c)/*判断a是否小于c*/

{t=aa=cc=t}/*是,则a、c的值互换*/

if(b<c)/*判断b是否小于c*/

{t=bb=cc=t}/*是,则b、c的值互换*/

printf("从小到大:%d,%d,%d\n",c,b,a)/*输出从小到大排列的数*/

printf("从大到小:%d,%d,%d\n",a,b,c)/*输出从大到小排列的数*/

}

扩展资料

输入三个数,比较其大小,并从大到小输出。

#include<stdio.h>

int main(){

inta,b,c

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

if(a<b){

intflag=a

a=b

b=flag

}

if(a<c){

intflag=a

a=c

c=flag

}

if(b<c){

intflag=b

b=c

c=flag

}

printf("%d%d%d",a,b,c)

}

#include <stdio.h>

int main()

{

int t,a,b,c

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

if(a<b)

{

t=a,a=b,b=t

}

if(a<c)

{

t=a,a=c,c=t

}

if(b<c)

{

t=b, b=c, c=t

}

printf("%d %d %d\n",c,b,a)

return 0

}

原理就是运用冒泡算法,把最大的数浮在最上面,而小的数就下沉,最后就输出。