代码如下
//输入3个数赋值给变量a、b、b,要求按由小到大的顺序输出它们
#include <stdio.h>
int main()
{
int a,b,c,t;
printf("Please enter a、b、c:");
scanf("%d%d%d",&a,&b,&c);
if(a>b){
//(1)若a>b,则交换a与b位置: b<a c
t=a; //其余情况亦是同理
a=b;
b=t;
}
if(a>c){
//(1)若a>c则交换a与c位置:b c<a
t=a;
a=c;
c=t;
}
if(b>c){
//(1)若b>c,则交换b与c位置 即 c<b<a
t=b;
b=c;
c=t;
}
putchar('\n');
printf("从小到大即:%d,%d,%d",a,b,c);
printf("\n");
return 0;
}
所用思想即分类讨论,看它们大小如何,若前者比后者大,则交换两者位置,那么经过3次 if 判断即可得出由小到大的顺序。
测试输出