C语言条件运算符

C语言具有高效、灵活、功能丰富、表达力强和较高的可移植性等特点,那么大家知道C语言条件运算符是什么呢?下面一起来看看!

如果希望获得两个数中最大的一个,可以使用 if 语句,例如:

if(a>b){ max = a;}else{ max = b;}

不过,C语言提供了一种更加简单的方法,叫做条件运算符,语法格式为:

表达式1 ? 表达式2 : 表达式3

条件运算符是C语言中唯一的一个三目运算符,其求值规则为:如果表达式1的值为真,则以表达式2 的值作为整个条件表达式的'值,否则以表达式3的值作为整个条件表达式的值。条件表达式通常用于赋值语句之中。

上面的 if else 语句等价于:

max = (a>b) ? a : b;

该语句的语义是:如a>b为真,则把a赋予max,否则把b 赋予max。

读者可以认为条件运算符是一种简写的 if else,完全可以用 if else 来替换。

使用条件表达式时,还应注意以下几点:

1) 条件运算符的优先级低于关系运算符和算术运算符,但高于赋值符。因此

max=(a>b) ? a : b;

可以去掉括号而写为

max=a>b ? a : b;

2) 条件运算符?和:是一对运算符,不能分开单独使用。

3) 条件运算符的结合方向是自右至左。例如:

a>b ? a : c>d ? c : d;

应理解为:

a>b ? a : ( c>d ? c : d );

这也就是条件表达式嵌套的情形,即其中的表达式又是一个条件表达式。

用条件表达式重新编程,输出两个数中的最大值:

#includeint main(){ int a, b; printf("Input two numbers:"); scanf("%d %d", &a, &b); printf("max=%d

", a>b?a:b); return 0;}

运行结果:

Input two numbers:23 45

max=45

【C语言条件运算符】相关文章:

c语言的条件运算符,C语言条件运算符相关推荐

  1. c语言程序设计CDIO,C语言程序设计(基于CDIO思想)(第2版)

    目录 第1章C语言概述 1.1C语言的产生与发展 1.1.1程序设计语言简述 1.1.2C语言的历史 1.2C语言的特点 1.3一个简单的C程序 1.4C语言程序的格式 1.5标识符.变量与常量 1. ...

  2. r语言 断轴 画图_R语言基础画图/绘图/作图

    R语言基础画图 R语言免费且开源,其强大和自由的画图功能,深受广大学生和可视化工作人员喜爱,这篇文章对如何使用R语言作基本的图形,如直方图,点图,饼状图以及箱线图进行简单介绍. 0 结构 每种图形构成 ...

  3. c语言 字母 八进制表示'/1011',C语言C语言第一课:C语言概述为什么学习C语言怎样学习C语言.DOC...

    [摘要]C语言 第一课: C语言概述 为什么学习C语言 怎样学习C语言 参考资料 ----------------------------------------------------------- ...

  4. 学单片机需要多少C语言基础,C语言单片机编程教程

    很多学员和朋友经常找我给他们推荐C语言的书,他们可能想和我当年一样,闷头大干一场,学个几个月的C语言,把C语言吃透,再开始单片机程序开发! 别!别!别! 大家千万别这么干,我当年自学了3个月的C语言, ...

  5. 为什么可以说Java语言是准动态语言?

    什么是动态语言? 动态语言,是指程序在运行时可以改变其结构:新的函数可以被引进,已有的函数可以被删除等在结构上的变化.比如JavaScript便是一个典型的动态语言. 除此之外如Ruby.Python ...

  6. c语言课件 文件,C语言课件--文件.ppt

    C语言课件--文件 例12-5 /*将字符串"apple", "grape", "pear" 写入到磁盘文件f12-5.txt中,然后再从该 ...

  7. python和c哪个适合入门-编程入门选什么语言好?C 语言还是Python ?为你解析

    前面我分享过计算机行业已经成了学校选择排名第一,家长和学生都很看好计算机类专业.现在IT行业也越来越火爆,程序员越来越被人看好.面对相比同龄人高薪资的诱惑,人们很难不心动,即使秃头也值得! 那么问题来 ...

  8. python叫什么语言-python是什么语言编写的

    python是什么语言编写的? python是C语言编写的. 自从20世纪90年代初Python语言诞生至今,它已被逐渐广泛应用于系统管理任务的处理和Web编程. Python的创始人为荷兰人吉多·范 ...

  9. 以下哪一个不属于python语言的特点-Python语言的特点有哪些

    Python语言的特点有哪些 Python 是目前最流行的语言之一,从云计算.大数据到人工智能,Python 无处不在,Python 人才需求量也在逐年攀升,Python 为何能发展如此的迅猛,究竟有 ...

  10. 【计算理论】可判定性 ( 计算模型与语言 | 区分 可计算语言 与 可判定语言 | 证明 通用图灵机语言是 可计算语言 | 通用任务图灵机 与 特殊任务图灵机 )

    文章目录 一.计算模型与语言 二.区分 可计算语言 与 可判定语言 三.证明 ATM\rm A_{TM}ATM​ 语言 可计算 四.通用 ( Universal ) 任务图灵机 与 特殊任务图灵机 一 ...

最新文章

  1. mysql 渗透及漏洞利用总结
  2. 下一代对话系统中的关键技术(上篇)
  3. Wintellect Collection Classes for .NET now on CodePlex
  4. 交个朋友,还得看小米
  5. 用c++创建xml文件的两种方法
  6. redis数据类型之hash入门
  7. 魔兽争霸的地图验证漏洞和作弊图原理,兼谈魔兽联机机制[转载]
  8. BLENDER快捷键(个人防止忘记的几个快捷键)
  9. 【STM32】ADC的DMA方式采集(16通道)
  10. C++ 字符串的截取
  11. Linux上几款好用的字幕编辑器
  12. 蓝拓扑便携式分析仪驱动程序_拔出便携式USB硬盘驱动器会损坏计算机吗?
  13. 人体捕捉:《SMPL-X》
  14. 2021-2027全球与中国韧带连结植入物市场现状及未来发展趋势
  15. 221900437方彬彬
  16. Web(万维网)发展简史
  17. word中实现图表的自动编号功能
  18. 不以得失而以“作为人”正确与否来判断
  19. c语言打印菱形星号七行_打印菱形图案
  20. 页面跳转问题presentViewController

热门文章

  1. IIS 405 Method Not Allowed
  2. 一篇文章看懂Yandex SEO:俄罗斯外贸从这里开始
  3. win10系统20H2版本更新以后桌面底下弹出了对话框,说我们在加载你的信息流时遇到了问题?
  4. pdf文件展示盖章及下载
  5. 神经网络分析教学目标,神经网络分析教学反思
  6. HDU 1069 DP
  7. 谈提高健身效果的营养品系列之一: 乳清蛋白, 肌酸, 支链氨基酸
  8. 阿凡题UWP的源码公开
  9. movieclip颜色
  10. 利用谷歌安全令牌(google authenticator)为服务器ssh添加二次验证功能