c语言,自增自减问题,门外汉

img

我觉得最后的结果应该是8啊,因为先-i,得到结果-(-8),然后i再进行减一,得到7。

     printf(%dn”,-i++)

这句输出-8,但运行完之后i=9
printf(%dn,-i--)
这句输出-9,但运行之后i=8,所以最后是输出-9.有帮助请采纳!

-i++执行后,i的值是9,-i--是后自增所以输出的时候是-i,就是-9

符号不会改变i的值,自增和自减才会,所以倒数第二条运行之后i是9而不是-9

img

img