C语言运算问题?

来源:百度知道 编辑:UC知道 时间:2024/05/19 00:19:47
main()
{
int x=15,y=9,i=13;
x++;
++y;
printf("%d,%d\n",x,y);
printf("%d\n",++i);
printf("%d\n",--i);
printf("%d\n",y++);
printf("%d\n",x--);

}
运行结果是 16,10
14
13
16
10
x--运行结果和--i运行结果是不是有问题?
为什么不是14和12?不是都减1吗?

答案最后两个数据调换了,其他没有问题
main()
{
int x=15,y=9,i=13; //初始化x,y,i
x++; //使用后加1,为16
++y; //使用前加1,为10
printf("%d,%d\n",x,y); //将16,10打印出来
printf("%d\n",++i); //使用前加1,为14
printf("%d\n",--i); //使用前加1,为13
printf("%d\n",y++); //使用后加1,打印时为10,打印后为11
printf("%d\n",x--); //使用后加1,打印时为16,打印后为15

}