i=3; printf("%d %d", ++i, i++); printf("%d", i);

i=3;printf("%d %d", ++i, i++);printf("%d", i);请分析程序输出
2024-12-05 01:09:04
推荐回答(4个)
回答1:

这题其实和求值顺序有关,c语言并没有规定运算顺序,有的系统是从右至左运算,例如windows。有的是从左至右运算。
所以,如果从右至左运算的话,输出为
535
如果从左至右运算的话
输出为445

回答2:

++i,先做++,i=4,输出
i++,先输出,i=4,再++,i=5
最后输出:445

回答3:

355

回答4:

5 35
有什么问题吗?