由键盘输入三个整数a、b、c,按从小到大的顺序输出这三个数。
#include <stdio.h>
int main()
{
int a,b,c;
scanf("%d %d %d",&a,&b,&c);
if(a<b&&b<c)
printf("%d %d %d",a,b,c);
if(a<c&&c<b)
printf("%d %d %d",a,c,b);
if(b<a&&a<c)
printf("%d %d %d",b,a,c);
if(b<c&&c<a)
printf("%d %d %d",b,c,a);
if(c<a&&a<b)
printf("%d %d %d",c,a,b);
if(c<b&&b<a)
printf("%d %d %d",c,b,a);
return 0;
}
这种方法比较暴力,直接把全部情况都给列举出来,但是效率特别低,而且容易出错 。
#include <stdio.h>
int main()
{
int a,b,c,t;//t为中间值
scanf("%d %d %d",&a,&b,&c);
if(a>b){
t=b;
b=a;
a=t;
}
if(b>c){
t=c;
c=b;
b=t;
}
if(a>c){
t=c;
c=a;
a=t;
}
printf("%d %d %d",a,b,c);
return 0;
}
而这种方法直接前后两个对比,如果满足条件则交换。
本人萌新,每日一题仅记录个人的学习过程,如有错误请多多指正,不喜勿喷。