条件表达式a<b?a:c<d?c:d
时间: 2023-07-30 11:06:06 浏览: 935
这是一个三目运算符嵌套的条件表达式,其含义为:如果a小于b,则返回a,否则比较c和d,如果c小于d,则返回c,否则返回d。可以用以下代码实现:
```
result = a < b ? a : (c < d ? c : d);
```
需要注意的是,这种嵌套的条件表达式会降低代码的可读性,建议在实际开发中慎用。
相关问题
若有数据描述int a=2,b=3,c=4,d=5;则条件表达式a<b?a:c<d?c:d的值是,为啥a
根据题目描述,这个条件表达式是:a < b ? a : c < d ? c : d。这个表达式的运算符优先级是:算术运算符(比如 <)的优先级高于条件运算符。因此,它的运算顺序是从左到右进行的。
首先,a < b 的结果为 true,因此整个条件表达式的值就是 a。因此,这个条件表达式的值是 2,而不是 5。
如果想要得到条件表达式的值为 5,可以这样写:a < b ? (c < d ? d : c) : (c < d ? c : d)。这样,先会判断 c < d,如果成立,就返回 d,否则返回 c。然后再根据 a < b 来判断是返回上面的结果还是下面的结果。
若整型变量a、b、c、d中的值依次为:1、4、3、2。则条件表达式 a<b?a:c<d?c:d 的值是。
根据条件运算符的优先级,先计算 c<d,若成立则结果为 c,否则为 d。再将结果与 a 和 b 进行比较,若 a<b 成立,则结果为 c 或 d 中较小的一个,否则为 a。因此,应该先比较 c 和 d,得到 c<d,再与 a 和 b 比较,得到 a<b 不成立。所以,条件表达式的值为 c 或 d 中较小的一个,即 2。
因此,条件表达式 a<b?a:c<d?c:d 的值为 2。
相关推荐
![](https://img-home.csdnimg.cn/images/20210720083646.png)
![c](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)