利用三目运算宏定义来判断最大值,是否在范围内,中位数,以及打印
#include <stdio.h>
#define MAXZ(x,y,z) ( (z) > ((x)>(y)?(x):(y)) ? (z) : ((x)>(y)?(x):(y)) )
#define MED(x,y,z) ( ( (x)>(y) ? ((x)-(z)) : ((y)-(z)) ) <=0 ? (x) : ((z)>( (x)<(y) ? (x) : (y) )?(z):( (x)<(y) ? (x) : (y) )) )
#define CHECK(x,y,z) ( ( (x)>0 && (x)<(z) && (y)>0 && (y)<(z) ) ? 1:0 )
#define ERROR(s,n) fprintf(stderr,"%s%d.\n",s,n)
int main (void)
{
printf("max number is %d \n", MAXZ(3,4,6));
printf("median is %d \n", MED(1,9,6));
printf("check if number in the range 0~n %d \n", CHECK(3,4,6));
ERROR("Range error: index = ",6);
return 0;
}