作业帮 > 综合 > 作业

解析下列程序运算过程main(){ int i=1,j=2,k=3; if(i++==j)&&k--==j) print

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/04/27 16:08:07
解析下列程序运算过程
main(){ int i=1,j=2,k=3;
if(i++==j)&&k--==j)
printf("%d,%d,%d",i++,j,k);
else printf("%d,%d,%d",++i,++j,k--);
}
结果是 :3 3 3
首先i++=j 不成立.所以执行else.此时i的值为2了.
printf("%d,%d,%d",++i,++j,k--);
的结果就是3 3 3
一定要区分好++i 和i++
++i是先使i的值加1,然后再使用.
i++是先使用i的值,然后再把值加1
再问: 饿为什么输出K--的时候输出的是3?
再答: k--先用k的值3。。。再把它的值加1 如果写成--k的话。。。结果就是4