C语言每日一题

1.题目

2.分析

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

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

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

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

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

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

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

因此求值顺序应该是

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

最后得出 z = 6

相关推荐
炸膛坦客6 分钟前
C++ 学习与 CLion 使用:(四)常量和变量,包括字面常量和符号常量
开发语言·c++·学习
特立独行的猫a14 分钟前
C/C++三方库移植到HarmonyOS平台详细教程(补充版so库和头文件形式)
c语言·c++·harmonyos·napi·三方库·aki
java1234_小锋36 分钟前
说说你对Integer缓存的理解?
java·开发语言
至此流年莫相忘1 小时前
TypeReference 泛型的使用场景及具体使用流程
java·开发语言·spring boot
windSnowLi1 小时前
Python opencv识别图片中重叠圆的圆心位置
开发语言·python·opencv
zh_xuan1 小时前
LeeCode 40.组合总和II
c语言·数据结构·算法
艾莉丝努力练剑3 小时前
《递归与迭代:从斐波那契到汉诺塔的算法精髓》
c语言·学习·算法
王廷胡_白嫖帝3 小时前
Qt网络速度测试工具开发教程 - 从零开始构建网络测速应用
开发语言·网络·qt
夏婵语冰5 小时前
实用R语言机器学习指南:从数据预处理到模型实战(附配套学习资源)
开发语言·学习·r语言
牛角上的男孩7 小时前
apt update Ign and 404 Not Found
开发语言·数据库