三目运算符-简化代码C/C++

C/C++ 中的三目运算符是一种条件运算符,通常用于简洁地表达条件判断和赋值。

在很多条件判断以及循环处理中,尤其是在两个条件的约束下,运用三目运算符,短短一行往往事半功倍;

它的语法如下

cpp 复制代码
condition ? expression1 : expression2

解释如下

  • 如果 condition 为真,则表达式的值为 expression1
  • 如果 condition 为假,则表达式的值为 expression2

例如

cpp 复制代码
int x = 10;
int y = (x > 5) ? 100 : 200;

在这个例子中,如果 x 大于 5,则 y 的值为 100;否则 y 的值为 200。

如果遇到三个以上判断条件的呢,三目运算符就失效了吗?

怎么可能,三个以及三个以上的循环条件,我们可以按照两个条件的方式进行扩展,我们以三个判断条件的举例

cpp 复制代码
int x = 0;
string status = (x > 0) ? "正数" : (x < 0) ? "负数" : "零";

这个示例中,如果 x 大于 0,则 status"正数";如果 x 小于 0,则为 "负数";如果 x 等于 0,则为 "零"

接下来列举三个小的事例,来展示这C/C++唯一的三目运算符的魅力(看看就好,熟悉这一语法,写起来很容易,也清晰明了,节省空间)

1.判断奇偶数

cpp 复制代码
int num = 6;
string result = (num % 2 == 0) ? "偶数" : "奇数";

2.比较两个数大小

cpp 复制代码
int a = 5, b = 10;
int larger = (a > b) ? a : b;

3.输出绝对值

cpp 复制代码
int number = -5;
int absValue = (number < 0) ? -number : number;

小结一下:

三目运算符通常用于简单的条件判断和赋值,但也可以嵌套使用以处理更复杂的条件逻辑。常用于条件赋值、条件返回等场景,可以使代码更简洁和易读。但过度使用三目运算符可能会降低代码的可读性,因此要适度使用。

相关推荐
We་ct39 分钟前
LeetCode 5. 最长回文子串:DP + 中心扩展
前端·javascript·算法·leetcode·typescript
王老师青少年编程5 小时前
csp信奥赛C++高频考点专项训练之贪心算法 --【哈夫曼贪心】:合并果子
c++·算法·贪心·csp·信奥赛·哈夫曼贪心·合并果子
叼烟扛炮5 小时前
C++第二讲:类和对象(上)
数据结构·c++·算法·类和对象·struct·实例化
天疆说5 小时前
【哈密顿力学】深入解读航天器交会最优控制中的Hamilton函数
人工智能·算法·机器学习
wuweijianlove6 小时前
关于算法设计中的代价函数优化与约束求解的技术7
算法
leoufung7 小时前
LeetCode 149: Max Points on a Line - 解题思路详解
算法·leetcode·职场和发展
样例过了就是过了7 小时前
LeetCode热题100 最长公共子序列
c++·算法·leetcode·动态规划
HXDGCL7 小时前
矩形环形导轨:自动化循环线的核心运动单元解析
运维·算法·自动化
谭欣辰7 小时前
C++ 排列组合完整指南
开发语言·c++·算法
代码中介商7 小时前
银行管理系统的业务血肉 —— 流程、状态机、输入校验与持久化(下篇)
c语言·算法