作者dsilver (细数远星永唱泉水)
看板java
标题[问题] 基础递增递减问题
时间Thu Jan 18 16:58:02 2018
大家好
小弟自学时
递增递减这边
常常搞不懂使用时机
现在遇到书上的题目
由於书上都是没有解答的
所以我自己写过後
发现无法解释给自己听
以下是debug结果
https://imgur.com/SNARKsf
第一个问题
x,y,z初始值都是1
z=++x-y++
是否可以解释成
z=[(++x)-y]++
跑出来为2
这样解释应该对吧?
第二个问题
ijk初始值都是1
k = k + i++ + ++j
这边我就看不懂了
为何k会变成4
第三个问题
a,b,c初始值都是3
c+= ++a*b++
我也搞不懂 他怎麽让c变15
说实在,在这里问高手这些问题有些丢脸
但还是请大家帮忙看一下
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 223.141.91.23
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/java/M.1516265886.A.607.html
1F:推 zephyrhymn: 第一题应该是 z = (++x) - (y++), z应该是1才对 01/18 17:24
2F:→ zephyrhymn: 第一眼看到怪怪的 自己试着跑是1才对 01/18 17:25
3F:→ zephyrhymn: 第二题 k = k(1) + (i++(1)) + (++j(2)) 是4无误 01/18 17:26
4F:→ zephyrhymn: 在这行之後i才会变成2 01/18 17:27
5F:→ zephyrhymn: 第三题 请看成 c = c + (++a) * (b++) 01/18 17:27
6F:→ zephyrhymn: c = c(3) + (++a(4)) * (b++(3)) 01/18 17:28
7F:→ zephyrhymn: c = 3 + 4 * 3 = 15 同样b会在这行之後变成4 01/18 17:29
8F:→ dsilver: 原来如此,感谢楼上大大!! 01/18 20:48
9F:推 james732: 练习也就算了,实务上请不要写这样的东西... 01/19 03:08
10F:→ cha122977: 练习真的没关系 实务上写这种真想打爆电脑XD 01/20 01:26
11F:推 pili100: 这种无效的练习…是要残害多少人 01/25 15:58
12F:→ y3k: 要挑战这种事情请写brainfuck谢谢XD 01/25 22:06