谭浩强C语言(第三版)习题10.1
2020-01-30 本文已影响0人
往sir_b2a2
题目描述
输入三个整数,按由小到大的顺序输出。
输入描述
三个整数
输出描述
由小到大输出成一行,每个数字后面跟一个空格
样例输入
2 3 1
样例输出
1 2 3
普通做法:这是我第一次想到的,也是大多数人的第一想法
#include<stdio.h>
int main()
{
int a,b,c,t=0;
scanf("%d%d%d",&a,&b,&c);
if(a>b)
{t=a;a=b;b=t;}
if(a>c)
{t=a;a=c;c=t;}
if(b>c)
{t=b;b=c;c=t;}
printf("%d %d %d ",a,b,c);
return 0;
}
高级做法:
#include<stdio.h>
int main()
{
int a, b, c, max = 0, min = 0;
scanf("%d%d%d", &a, &b, &c);
max = (a > b ? a : b) > c ? (a > b ? a : b) : c;
min = (a < b ? a : b) < c ? (a < b ? a : b) : c;
printf("%d %d %d ", min, (a + b + c) - max - min, max);
return 0;
}
参考链接:https://blog.csdn.net/cjhxydream/article/details/64439430