【问题描述】定义一个带参数的宏MAX(x,y,z),实现只用一个宏求三个数中的最大值。
【输入形式】依次输入三个双精度数
【输出形式】输出其中的最大值printf("MAX=%.2f",MAX(a,b,c))
【样例输入】1,2,3.6789
【样例输出】MAX=3.68
#include<stdio.h> //定义max函数
#define max(x,y,z) x>y&&x>z?x:(y>x&&y>z?y:z)//x>y&&x>z成立执行x,否则执行语句2
int main() //y>x&&y>z成立执行y,否则执行z
{
double x, y, z;
scanf("%lf,%lf,%lf", &x, &y, &z);
printf("MAX=%.2f", max(x,y,z));
return 0;
}