我的理解答案应该是9,7,8,8-,8,-8呀!为什么不是,我要如何理解,求各位大神路过给予答案,谢谢各位

2024-12-01 17:00:51
推荐回答(2个)
回答1:

有两个基本的知识点:1.++i或者--i是在当前语句就执行的;2.i--和i++是在执行该语句之后才执行的。所以,i初值为8,执行++i则为9,此时打印出9;执行--i,则为9-1=8,打印8;执行i++,先打印i的值8,然后在下个语句执行之前i+1=9;执行i--,此时i已经为9,先打印9,然后在下个语句执行之前i-1=8;执行-i++,此时i的值是-8,打印-8,然后下个语句执行之前i+1=9;执行-i--,打印-9,在执行这个语句之后,其实i的值就变成8了。
你最需要理解的还是++i和i++的区别。

回答2:

++i,打印出来的是(i+1)的结果,i这个变量也变成(i+1),i++,打印的是i,但是i这个变量本身变成了i+1,--与++同理。
所以第二个是在9的基础上减去1,打出来的是8,i也变成了8,第三个打出来是8,但是i变成了9,所以第四个打出来是9但是i又变成了8进入到一个语句,下一个语句中先处理-i,这样会直接打印-8,再对i进行自增运算,得到i为9,下一步先打-9,同时对i自减,i变成8,你可以补个打印i的语句看看。