#include stdio.h
藤县网站建设公司成都创新互联,藤县网站设计制作,有大型网站制作公司丰富经验。已为藤县成百上千家提供企业网站建设服务。企业网站搭建\外贸营销网站建设要多少钱,请找那个售后服务好的藤县做网站的公司定做!
#define min(x,y) (x)(y)?(y):(x)
int main()
{
int a,b,c;
scanf("%d%d%d",a,b,c);
printf("min:%d\n",min(min(a,b),c));
return 0;
}
宏定义min(x,y)求x,y中较小的数,这里的三目运算目注意要括号
然后输出叠加两个min
当然宏定义也可以带三个参数,但是就写得比较长,不易阅读
作答不易,望采纳
这就涉及到函数与宏的优缺点了
宏会在编译器在对源代码进行编译的时候进行简单替换,不会进行任何逻辑检测,即简单代码复制而已,既然是单纯的替换,如果你括号去掉由于优先级的关系,就有可能出现问题。
之所以用宏是因为 宏的效率高,不需要压栈 和出栈
C语言没有max这个函数,需要自己定义并编写max函数。
例如源代码可以是:
#include stdio.h
int max (int a, int b) {
if (ab)
return a;
else
return b;
}
int main()
{
int a,b,c;
scanf ("%d %d",a,b);
c = max (a,b);
printf ("%d",c);
return 0;
}
运行结果
输入 2 3
输出 3