早教吧 育儿知识 作业答案 考试题库 百科 知识分享

c自加自减问题我晕了#includemain(){inti,x,y;i=2;x=(++i)+(i++)+(++i);y=(i--)+(--i)+(i--);printf("%d,%d,%d",i,x,y);}结果为什么为21012啊不是(++i)=3(i++)=3(++i)=5了吗(i--)=5(--i)=4(i--)=4吗初学者嘿嘿

题目详情
c自加自减问题 我晕了#include main() { int i,x,y; i=2; x=(++i)+(i++)+(++i); y=(i--)+(--i)+(i--); printf("%d,%d,%d",i,x,y); } 结果为什么为 2 10 12啊 不是(++i)=3 (i++)=3 (++i)=5了吗 (i--)=5 (--i)=4 (i--)=4 吗 初学者 嘿嘿
▼优质解答
答案和解析
x=2是在定义x的时候赋值为2的。因为“++,--”在系统内部是从右往左开时算的啊;所以了(++i)=4,(i++)=3,(++i)=3,所以y=2,从y的计算中就能得到X=5,(i--)=3,(--i)=4,(i--)=5,所以Z=12