Winskey
2018-08-09 17:28
#include <stdio.h>
int main()
{
int a=100;
printf("%d\n",a++);
printf("%d\n",++a);
printf("%d\n",--a);
printf("%d\n",a--);
printf("%d\n",a+1);
printf("%d\n",a);
return 0;
}
和样本是一样的啊,为什么会输出错误呢?
还有如果a+1不改变a的值,那为什么要进行“printf("%d\n",a+1);”的运算呢?
a++是指提取a的值后再加1,如果a的赋值原本是1,那么结果就是1,但是下一条代码再用到a时,它的赋值从这个代码开始就是a+1了;++a的话就是先加1再提取结果
因为它没让你重现这个啊...它让输出X=0和X=2。这个printf("%d\n",a+1);只是为了说明这个会改变此时输出的值但这个a的值不会参与循环和接下来的计算
。。。你活到现在读的书是白读了吗?需要我告诉你方程怎么解吗?
C语言入门
926019 学习 · 20793 问题
相似问题