C语言每日一题

1.题目

2.分析

这里考察的是运算符运算规则的问题,

影响运算符求值顺序的主要是运算符的优先级结合性

  • 优先级:主要是不同优先级运算符之间的运算规则

  • 结合性:主要是优先级相同时运算符需要遵守的运算规则

    本题中的表达式,有以下4种运算符,它们是具有不同优先级的运算符 ,因此这里只需考虑优先级,无需考虑结合性

    • 复合赋值运算符 +=
    • 关系运算符 >
    • 条件运算符 ? :
    • 自增运算符 ++

    优先级从高到低:自增运算符、关系运算符、条件运算符、赋值运算符

因此求值顺序应该是

  • 第一步,是判断x>y(注:若这里的++为后置++,则先进行x++或y++)
  • 第二步,因为x>y为假,所以进行++y操作,即3
  • 第三步,是复合赋值运算 += ,即z += 3,z = z + 3,

最后得出 z = 6

相关推荐
阿华hhh8 分钟前
Linux系统编程(网络udp)
linux·服务器·c语言·网络·网络协议·udp
世转神风-11 分钟前
qt-在字符串中指定位置插入字符串
开发语言·qt
时光呀时光慢慢走14 分钟前
C# WinForms 实战:MQTTS 客户端开发(与 STM32 设备通信)
开发语言·c#
superman超哥34 分钟前
仓颉类型别名的使用方法深度解析
c语言·开发语言·c++·python·仓颉
LFly_ice38 分钟前
Next-4-路由导航
开发语言·前端·javascript
3824278271 小时前
python :__call__方法
开发语言·python
是Yu欸1 小时前
从Ascend C算子开发视角看CANN的“软硬协同”
c语言·开发语言·云原生·昇腾·ascend·cann·开放社区
黎雁·泠崖1 小时前
C 语言字符串进阶:strcpy/strcat/strcmp 精讲
c语言·开发语言
赴前尘1 小时前
golang获取一个系统中没有被占用的端口
开发语言·后端·golang
嘴贱欠吻!1 小时前
JavaSE基础知识
java·开发语言