C语言三个数比大小
代码如下:
#include <stdio.h>
int main()
{
int a,b,c;
scanf("%d%d%d",&a,&b,&c);
if(a>b) //判断a与b之间的大小关系,如果a大于b,那么就把b中的值赋到a中
{
a = a+b; //如果a小于b,那么就不变,总之一定要保证a中是存储着当前最小的值
b = a-b;
a = a-b;
}
if(a>c) //同上,判断a与c之间的大小关系,如果c小于a,那么就把c中的值赋到a中
{
a = a+c; //由第一个if可以得到那时的a中存储的一定是当时两个数的最小的值,把那个值再与c比较,就可得出三个数中的最小值
c = a-c;
a = a-c;
}
if(b>c) //判断出最小值了,但最大值和第二大的值没有得出,再进行第三次if判断,判断出最大值
{
b = b+c; //如果b>c则把b和c中的值互换,如果b<c则不变,一定要保证c中存储的是最大值,最小值和最大值都确定了,那还剩一个值就是中间的值
c = b-c;
b = b-c;
}
printf("%d<%d<%d",a,b,c);//此时a,b,c中的数都是按大小排序的
return 0;
}