输入3个整数,从小到大排序后输出。
编程入门很常见的一个题,一般的解法都是多个if语句嵌套或者if语句判断条件繁琐,最近看到一种新的解法,记录下来。
#include<stdio.h>
int main(){
int a, b, c;
scanf("%d%d%d", &a, &b, &c);
if (a>b){
int temp=a;
a=b;
b=temp;
}//执行完之后a<b
if(a>c){
int temp=a;
a=c;
c=temp;
}//执行完之后a<c且a<b
if(b>c){
int temp=b;
b=c;
c=temp;
}
printf("%d %d %d\n", a, b, c);
return 0;
}
程序的关键在于只是交换a,b,c的值,最终保证a<=b<=c.