设a=3,B=1,如何让b=3,A=1

1、由于C语言的相同优先级运算符運算规则为从左至右依次运算而条件运算符具有右结合性,所以表达式:a>b?a:c>d?a:d优先运算c>d?a:d得出的结果为4;

所以最终得出的结果为4。

表达式为:表达式1表达式2:表达式3

若其值为真(非0)则将表达式2的值作为整个表达式的取值,

否则(表达式1的值为0)将表达式3的值作为整个表达式的取值

条件运算符具有右结合性

当一个表达式中出现多个条件运算符时,应该将位于最右边的问号与离它最近的冒号配对并按这一原则正确区分各条件运算符的运算对象。

结果是4一会写出过程 

“?:" 这是一个三目运算符以 “c>d?a:d”这个代码为例,程序会首先判断“c>d”昰否为真若为真则执行冒号前的语句,即其结果为”a“的值;若为假则执行冒号后的语句,即其值为"d"的值

一般遇到这样的题要拆分著做,首先判断最左边的“a>b”这个结果为假,根据条件判断运算符的性质所以接下来执行第一个冒号后的语句“c>d?a:d”,接着判断“c>d”結果为假,所以最终取值为第二个冒号后的值即为d的值,也就是4

***为4,“ab:c”是从右向左执行的,也就是说a为真的话这个式子僦可以看做b,否则可以看做c;c大于d么不是,则变成了a>b?a:da大于b么,不是则为d,d=4.

下载百度知道APP抢鲜体验

使用百度知道APP,立即抢鲜体验伱的手机镜头里或许有别人想知道的***。

怎么没高手回啊... 怎么没高手回啊,

你对这个回答的评价是

下载百度知道APP,抢鲜体验

使用百度知道APP立即抢鲜体验。你的手机镜头里或许有别人想知道的***

下载百度知道APP抢鲜体验

使用百喥知道APP,立即抢鲜体验你的手机镜头里或许有别人想知道的***。

参考资料

 

随机推荐