条件运算符(?:)需要三个操作数,所以也称三元运算符

操作式如下:

【条件】? 【表达式1】:【表达式2】

根据条件的计算结果,决定要计算两个表达式中的哪一个

如果条件为true(即计算结果不为0),计算表达式1;条件为false,计算表达式2。所得出的值就是整个表达式的结果。

举一个在赋值运算中的常见例子:假设给一个数组赋值,下标为偶数的赋值true,下标为奇数的赋值false

如果用if-else语句:

for (int i = 0; i <= 49; i++)
{if (i % 2 == 0) { vector[i] = true;}else { vector[i] == false; }
}

用(?:)运算符:

for (int i = 0; i <= 49; i++){values[i]=(i%2==0)?true : false;}

可以看到,使用运算符后代码精炼不少。

对于这类“二选一”的问题,用上三元运算符可以有效减少代码量,同时也让代码更加美观精炼。

在所有运算符中,只有赋值和逗号运算符的优先级比三元运算符低

所以这样的语句,前方的"i>0"条件不用加括号

judge = i>0 ? true : false;

C语言条件运算符(?:)的使用相关推荐

  1. C 和C语言条件运算符的区别

    条件运算符(conditional operator)有时候也称为三元运算符(ternary operator,或者trinary operator),因为它是唯一需要 3 个操作数的运算符: 条件 ...

  2. c语言条件运算符的作用,条件运算符的用法_C运算符的结合方向

    JAVA语言 形式关系表达式 ? 表达式1 : 表达式2 求值规则 求解关系表达式,根据关系表达式的布尔值决定取值:关系表达式的值为true时取表达式1的值:关系表达式的值为false时取表达式2的值 ...

  3. c语言条件运算符ppt,C语言程序设计——运算符 条件结构.ppt

    C语言程序设计--运算符 条件结构 第三章 运算符 目标 理解表达式 掌握赋值运算符的用法 熟练使用关系运算符 掌握简单的条件语句的使用 熟练使用逻辑运算符 了解sizeof运算符 理解运算符的优先级 ...

  4. C语言-条件运算符和条件表达式

    if语句 if ( a>b)max = a; elsemax = b; 可以把上面的if语句改写为 max = (a>b) ? a:b; 赋值号右侧的的" (a>b) ? ...

  5. C语言入门条件运算符

    #C语言条件运算符基础 条件运算符其实就是if-else-的轻量版,会用的话就非常方便. 由?,:组成 if(a>b){max = a;} else{max = b;}//如果a大于b,那么最大 ...

  6. c语言prime函数怎么用_C语言教程_v20201106

    编程基础 1.1    通俗地理解什么是编程语言 1.2    C语言究竟是一门怎样的语言? 1.6    初中毕业能学会编程吗? 1.7    C和C++到底有什么关系? 1.8    学了 C 语 ...

  7. c语言(http://c.biancheng.net/view/1714.html)

    目录 1.编程基础 1.1 通俗地理解什么是编程语言 1.2 C语言究竟是一门怎样的语言? 1.3 C语言是菜鸟和大神的分水岭 1.4 英语和数学不好,能学编程吗? 1.5 进制详解:二进制.八进制和 ...

  8. 计算机基础语言学习线路图

    计算机基础语言学习线路图 HTML HTML教程 HTML简介 HTML编辑器 HTML基础 HTML元素 HTML属性 HTML标题 HTML段落 HTML样式 HTML格式化 HTML引用元素 H ...

  9. C语言学习笔记-入门整合篇(十万字长文)

    (该篇学习内容全部来自于C语言中文网, 本篇内容仅仅是简易学习笔记 , 以自己的理解+网站部分描述结合+个人补充,并不适合编程初学者观看!!! 需要有一定的编程基础) 数据在内存中存储 内存条包含了上 ...

  10. C语言中唯一的一个三目运算符(条件运算符)

    C语言中唯一的一个三目运算符(条件运算符) "(a>b)?a:b"是一个条件表达式,如果(a>b)条件为真,则条件表达式去值a,否则取值b. 一般形式:表达式1?表达式 ...

最新文章

  1. java 接口 泛型示例,java泛型接口实现示例
  2. oracle 窗口函数over
  3. unittest单元测试框架总结
  4. 支付宝服务窗API接口开发php版本
  5. 4K修复版《海上钢琴师》登陆全国院线,一文读懂背后的黑科技!
  6. wampserver橙色如何变成绿色_PLC视频教程:手机如何控制西门子变频器V20
  7. 保留小数点后三位_三年后想买车?Excel理财小助手pmt函数帮你算
  8. 那个男人 ,他带着Vue3来了~
  9. 【报告分享】2020直播生态研究报告.pdf(附下载链接)
  10. 阿里云大学>【Python学习路线】Python语言基础自测考试 - 初级难度 | 包过关系列
  11. MATLAB三元条件运算符,C++ ?:条件运算符(三目运算符)用法详解
  12. pandas_计算最大回撤
  13. c语言 c啥意思,C是什么意思_C的翻译_音标_读音_用法_例句_爱词霸在线词典
  14. 工业视觉检测入门——如何设计一个合适的检测方案?(需求分析+光学设计+检测算法+UI交互+后端数据)
  15. 高速下载Arxiv论文的解决方案
  16. SqlServer2017 AlwaysOn 读写分离 无域控
  17. 专访金榕:四年蜕变,阿里iDST是如何登上浪潮之巅的?
  18. WS小世界网络构建实验(Matlab版)
  19. Java消息队列与JMS的诞生
  20. Jetson Nano控制SIM7020 开关机

热门文章

  1. Java支付宝APP支付-统一收单交易退款
  2. 【错误记录】python不常用的一个小操作:安装pip
  3. 光漫反射和散射的区别
  4. 神经网络与误差反向传播算法
  5. java 鸡尾酒排序_java交换排序之鸡尾酒排序实现方法
  6. 解决onenote同步速度慢问题
  7. mysql error 1236_【MySQL】Got fatal error 1236原因和解决方法
  8. PHP Session理解
  9. 尹稚:中国城镇化战略研究
  10. Kubernetes集群监控之Prometheus Operator