代码思路(1)
定义三个变量,通过用户输入之后进行if语句嵌套多分支判断。
代码如下:
int main()
{
int a, b, c = 0;
scanf("%d %d %d",&a,&b,&c);
if (a > b)
{
if (a > c)
{
printf("%d ", a);
if (b > c)
{
printf("%d ", b);
printf("%d ", c);
}
else
{
printf("%d ", c);
printf("%d ", b);
}
}
else
{
printf("%d ", c);
printf("%d ", a);
printf("%d ", b);
}
}
else
{
if (b > c)
{
printf("%d ", b);
if (a > c)
{
printf("%d ", a);
printf("%d ", c);
}
else
{
printf("%d ", c);
printf("%d ", a);
}
}
else
{
printf("%d ", c);
printf("%d ", b);
printf("%d ", a);
}
}
system("pause");
return 0;
}
if嵌套多分支判断易混乱,繁琐。不宜采用,宜采用方法二。
代码思路(2)
定义变量a,b,c,将 a 换成最大的,b换成次大的,c换成最小的,最后输出 a b c即可
代码具体如下
int main()
{
int a, b, c = 0;
int x= 0 ;
scanf("%d %d %d",&a,&b,&c);
if (a < b)
{
x = a;
a = b;
b = x;
}
if (a < c)
{
x = a;
a = c;
c = x;
}
if (b < c)
{
x = b;
b = c;
c = x;
}
printf("%d %d %d",a,b,c);
system("pause");
return 0;
}
重点:
定义一个新变量用来存储原值。if (a < b)
{
// 替换 a 和 b
}
if (a < c)
{
// 替换 a 和 c
}
if (b < c)
{
// 替换 b 和 c
}