采用中间变量交换法
如a=3,b=4
要使a,b数字交换,引入中间变量tmp
tmp=a;
a=b;
b=tmp;
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main()
{
int a = 0;
int b = 0;
int c = 0;
int tmp = 0;
scanf("%d %d %d", &a, &b, &c);
if (a < b)//因为由大到小输出,所以只判a<b
{
tmp = a;
a = b;
b = tmp;
}
if (a < c)
{
tmp = a;
a = c;
c = tmp;
}
if (b < c)
{
tmp = b;
b = c;
c = tmp;
}
printf("%d %d %d", a, b, c);
}
注意:判断的顺序不能错
代码简化:创建并调用交换函数
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int exchange(int* x, int* y)
{
int tmp = 0;
tmp = *x;
*x = *y;
*y = tmp;
}
int main()
{
int a = 0;
int b = 0;
int c = 0;
int tmp = 0;
scanf("%d%d%d", &a, &b, &c);
if (a < b)//因为由大到小输出,所以只判a<b
exchange(&a, &b);
if (a < c)
exchange(&a, &c);
if (b < c)
exchange(&b, &c);
printf("%d %d %d", a, b, c);
}