C语言程序设计---4:选择结构程序设计

关系运算符及其优先次序

详情见表:
C语言运算符的优先级和结合性一览表_C语言中文网

  • 为了表示逻辑量,在C的关系运算中,以1代表“真”,以0代表“假”。例如a=3,b=2,c=1时,关系表达式“(a>b)==c”为“真”(因为a>b的值为1,等于c的值),表达式的值为1。
  • C程序中还允许把关系运算的结果(即1和0)看作和其他数值型数据一样,可以参加数值运算,或把他赋值给数值型变量。

逻辑运算符和逻辑表达式

  • && 逻辑与 相当于and
  • || 逻辑或 相当于or
  • ! 逻辑非 相当于not
  • 优先次序: !(非)-> &&(与)-> ||(或)
  • &&和||低于关系运算符,!高于算术运算符
  • !(非)-> 算术运算符 -> 关系运算符 -> &&(与)-> ||(或)-> 赋值运算符
  • C语言编译系统在标识逻辑运算结果时,以数值1代表“真”,以0代表“假”,但在判断一个量是否为“真”时,以0代表“假”,以非0代表“真”,即将一个非零的数值认作为“真”。
  • a=4,则!a的值为0。
  • a=4,b=5,则a&&b的值为1。
  • 5>3&&8<5-!0的值为0。
  • 实际上,逻辑运算符两侧的运算对象也可以是字符型、实型或指针型等,系统最终以0和非0来判定它们属于“真”或“假”。
  • ‘c’&&‘d’的值为1(因为‘c’和‘d’的ASCII值都不为0,按“真”处理)。

条件表达式

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

  • 条件表达式中,表达式1的类型可以与表达式2和表达式3的类型不同。例如 x ? ‘a’ : ‘b’ ;整型变量 x 的值若等于0,则条件表达式的值为‘b’。
  • 表达式2和表达式3的类型也可以不同,此时表达式的值的类型为二者中较高的类型。例如 x>y? 1:1.5 ,如果x《 y,则表达式的值为1.5;若x > y,值应为1,由于1.5是实型,比整型高,因此,将1转换成实型值1.0。
  • char可以直接比大小
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值