第一个输出结果还好理解,第二个很难理解。我试了下,发现在一个语句(一个语句应加着重号)里同一个变量自加两次以上,只有前两次的的结果能累加,后面出现的自加都是单独算的。如楼主的实验中,10就是两个3和一个4 的和。如果有四个y的自加,则结果应是15=3+3+4+5,如果是六个自加的话就是21=3+3+4+5+6。依次类推。
一个例子
int y=1;
如果printf("%d",y++) 此时屏幕上显示的是1
但如果printf("%d",++y) 此时屏幕上显示的是2
y++是先执行命令后再做自加1
++y是在执行之前就做自加1
另外11楼的看法我也验证了一下。结果一样!好破烂的设定
[ 本帖最后由 qwerty089850 于 2011-10-3 22:27 编辑 ]