问号表达式(C语言问号表达式) | 您所在的位置:网站首页 › c语言中问号怎么用 › 问号表达式(C语言问号表达式) |
问号表达式(C语言问号表达式) 来源:网友提问 浏览数:9001 关注:328人 最佳回答: 大家好,最近很多小伙伴想了解问号表达式,下面是(www.gazyc.com)小编整理的与问号表达式相关的内容分享给大家,一起来看看吧。 本文目录一览: 1、C语言问号表达式 2、(x)<(y)?(x):(y)在C语言中的意思? C语言问号表达式……?……:…… 式A?B:C值为:若A为真,则B;若A为假,则C。 但有一点是值得注意的,那就是问号表达式的结合 ,问号表达式是从右往左的运算方向 尤其是当问号表达式嵌套使用时得注意这个问题,例如 代码: int a=1,b=2,c=3,d=4; printf("%d",ab?a:cd?c:d); 正确结果是:1 因为先执行的是cd?c:d,会返回c,然后执行ab?a:c 因此得到的结果就是1(可以在编译器上实验一下) (x)<(y)?(x):(y)在C语言中的意思?(x)<(y)?(x):(y)在C语言中的意思是指如果表达式(x)<(y)成立即x小于y,则执行表达式(x),否则执行表达式(y)。(x)<(y)?(x):(y)叫做问号表达式。 举例及结果: int a=5,b=3; printf("%d",ab?a:b); 如果a大于b成立则执行:前面的即输出a。否则执行:后面的即输出b。本例中输出结果为5。 扩展资料: 问号表达式用法:求最大值和数值排序 1、求x、y、z的最大值 #include "stdio. " main() { int x,y,z,max; scanf("%d%d%d",x,y,z); max=xy?(xz?x:z):(yz?y:z); printf("max=%d",max); } 2、键盘输入三个整数,按由小到大的顺序输出。 #include "stdio. " main() { int i,j,k,max; scanf("%d%d%d",i,j,k); max=ij?i:j; max=maxk?max:k; printf("max=%d",max); } 以上就是问号表达式的介绍,希望能对大家有所帮助。 获赞:769 收藏:43 回答时间:2023-04-13 11:07:13 |
今日新闻 |
推荐新闻 |
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 |