为了账号安全,请及时绑定邮箱和手机立即绑定

定义i=2,printf("%d,%d,%d",i,++i,i++);输出的结果为什么是3,3,2啊??

#include<stdio.h>
int main()
{
   int i=2;
   printf("%d,%d,%d"i,++i,i++);
   return 0;
}


正在回答

4 回答

写在一起就是全部运算完了再输出的结果

0 回复 有任何疑惑可以回复我~

i++是先赋值,再计算,i=2时,赋值i=2,所以i++就是2,但是如果后面还有就是,那就是从3 开始了

至于为啥第一个i也等于2,求一个大佬告诉

0 回复 有任何疑惑可以回复我~

#include<stdio.h>

int main()

{   

int i=2;  

printf("%d",i);

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

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

return 0;

}



改成这样可以

0 回复 有任何疑惑可以回复我~

你看看你"后面是不是少了个逗号。。。

0 回复 有任何疑惑可以回复我~
#1

精慕门7292201 提问者

是少了个逗号,可我想问的为什么是这个结果。而不是2,3,3
2020-01-02 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

定义i=2,printf("%d,%d,%d",i,++i,i++);输出的结果为什么是3,3,2啊??

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信