你不知道的优先级运算问题

针对小白的一些教程,当然大佬们也可以看看提提简易

一定是有些帮助的

别犹豫,快速告诉我下面的输出结果是什么

我想大部分人都能够得出答案输出的y=1.5,如果不是的可以好好反思自己在学什么了
针对这里呢,我相信大家肯定都知道,乘除的优先级高于加减,所以先算了x*x再处于2最后再加x,针对这样的运算确实没什么问题,那么接下来的你还可以这么算吗

难度增加

请大家不要犹豫,告诉我你的答案

我觉得应该有不少的小伙伴的出来的答案不是 4 吧 这里面呢,涉及到了自增和自减,又同时涉及到了乘除加减,所以可能会有不少的小伙伴会做错 你们可能回想,欸,为什么不是7呢或者其他数呢,这里要知道 x++和++x的区别 ,x++是返回的是表达式运算之前的值,也就是x=1时,x++返回的是1而不是2,但是此时x确实已经为2了,所以说,x++返回的是表达式运算之前的值,而++x呢正好相反,++x则是先进行+1然后再返回值,所以这两者还是有区别的,但是他们相同的是,最后都会为x+上1,只不过一个是再运算前,一个再运算后 所以算出来是 y=1+1*3 结果为4

你以为到这里就结束了吗?不不不,接下来难度升级,再看一道

请大家一样不要犹豫,说出你的结果

答案是** 25**你答对了吗? 相信不少人看到这都比较懵(大佬除外),说博主你这是上面玩意啊,哪有人会这么出题的.....不不不,平常开发确实不会遇到这么恶心下头的东西,但是某些人他不是人啊,呸呸呸,我啥也没说,我们来看这道题
注意这里,这里面出现了太多的自增了还涉及到了加减和乘除,但是大家基本的运算优先级不要忘了,自增的优先级是要大于乘除的,乘除的优先级又大于加减,但是注意,不要直接先算自增或者乘除如果你一眼望去就看到了 x++ * ++x从这里入手的话,那么你一定会算错的。

这里给大家一个口诀

  1. 从左到右依次查看
  2. 如果遇到操作数,将数据的值直接取出
  3. 如果遇到相邻的两个运算符,并且左边的运算符优先级大于等于右边的运算符,则直接运行左边的运算符。
    对应到这里呢,就是先从左往右看 x++的优先级大于+法,所以先进行x++的运算,x++=1,此时x为2 2+ ++x + x++ * ++x + ++x,

然后重新从左往右看,+号遇到了++运算,+号的优先级小于++,所以继续往后看,当++遇到 号是,++的运算高于 号,所以这时候运算++x =3 此时x为3,// 1 + 3 + x++ * ++x + ++x,

随后重新开始从左往右看,1+3+ 此时两个加号相遇,运算及平级,所以可以直接运算1+3 此时变成// 4+ x++* ++x + ++x

再重新从左往右看,+遇到了 ++,继续往后看,++遇到了,++优先级大于*,此时先算x++ =3 此时x为4,变为 4+3*++x + ++x,

再重新从左往右看,4+3 遇到了++,继续往后看,++遇到了+,先算++x=5 此时x=5,变为4+3 5+ ++x,再重新从左往右看,当号遇到+号时优先级较高,所以先算了35=15,此时4+15+ ++x,

再重新从左往右看+号遇到+号运算4+15=19,最后+遇到了++,再往后没有了,所以此时先算++x=6 此时 x=6 ,自此变为19+6=25至此运算结束,返回25

怎么样你明白了吗 接下来给大家出道题,难度比上一个还要高一点,大家可以尝试一下,把你们的答案放在评论区,可以根据上面的运算口诀得出正确结果

大家挑战一下吧,大佬也可以来挑战一下哦,不一定大佬能做出来

关注我,带小白了解更多前端基础问题和一些好看又好玩的样式,我是如意,一个致力于python+前端方向的大三在校学生,欢迎大家关注和大佬指点

相关推荐
丨白色风车丨3 小时前
LangChain Agent 从入门到实战:创建与调用参数全解析
前端·python·langchain
Jmyd012310 小时前
Web端3D营销展厅技术实现路径:从素材上云到线索回流的数据链路
前端·3d·性能优化·三维数字化
半个落月11 小时前
LangChain Agent 中间件实战(上):生命周期、状态、短路与工具包
javascript·langchain
砚凝霜11 小时前
【软考信息安全】第二十二章 Web服务器安全分析与增强——Apache与IIS
服务器·前端·安全
半个落月11 小时前
LangChain Agent 中间件实战(下):DeepAgents文件权限、长期记忆与对话摘要
javascript·langchain
西柚小萌新11 小时前
【岗位面试】--成都博维数孪 - 工业 AI 解决方案顾问
人工智能·面试·职场和发展
小 黄 鸡11 小时前
Flutter 面试必会知识点详解(从基础到进阶)
flutter·面试·职场和发展
u01110267513 小时前
JPG、PNG、WebP 怎么选?按透明度、体积和使用场景做判断
前端·javascript·vue.js·图像处理·ai作画
jerrywus13 小时前
让 AI 写完代码后交一份报告:我改造了 answer-me-with-html
前端·claude·cursor
派小心.14 小时前
小程序分享链路中来源参数的传递校验
大数据·前端·数据库·人工智能·小程序·数据分析