第一种:
#define MID(a, b ,c) a > b ? (b > c ? b : ( a > c ? c : a)) : ( a > c ? a: (b > c ? c : b))
第二种:
#define MAX(a, b) (((a) > (b) ) ? (a) : (b))
#define MIN(a, b) (((a) < (b) ) ? (a) : (b))
#define MID(a, b, c) MAX(a, b) > c ? MAX(MIN(a, b), c) : MAX(a, b);
第三种:
#define MAX(a, b) (((a) > (b) ) ? (a) : (b))
#define MIN(a, b) (((a) < (b) ) ? (a) : (b))
#define MID(a, b, c) MAX(MIN(MAX(a, b), c), MIN(a, b))
第四种:
#define MAX(a, b) (((a) > (b) ) ? (a) : (b))
#define MIN(a, b) (((a) < (b) ) ? (a) : (b))
#define MID(a, b, c) MIN(MAX(MIN(a, b), c), MAX(a, b))
本文介绍了四种使用宏定义实现的求三个数中值的方法。这些方法基于C语言的预处理器指令,通过条件运算符来确定给定三个数值时的中间值。每种方法都巧妙地利用了MAX和MIN宏来简化表达式。

2万+

被折叠的 条评论
为什么被折叠?



