#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;
}
运行结果:
100
102
101
101
101
100
为啥运行结果是这样的。
我自己算出的结果是这样的:
100 a=101
102 a=102
101 a=101
101 a=100
101 a=101
101 a=101
3 回答
已采纳
Yexiaomo
TA贡献152条经验 获得超157个赞
先说一下 a++ 和 ++a的区别 虽然结果都 a 的值加 1 但是 a++ 却是 先进行 其他操作 ++a 却是 先进行加 1, 再进行其它操作,
直接看代码吧:
int main() { int a=100; // 此时 a = 100; printf("%d\n",a++); // 先 输出 a 值(也就是说,此时 还是 100), 输出之后, 再自加, a = 101 printf("%d\n",++a); // 先 自加 1, a = 102 再输出 a 值 (a=102) printf("%d\n",--a); // 先 自减 1, a = 101 再输出 a 值 (a=101) printf("%d\n",a--); // 先 输出 a 值(此时 a=101), 输出之后, 再自减 1, a = 100 printf("%d\n",a+1); // 输出 (a+1)=101 a 的值不变(a=100) printf("%d\n",a); // 输出 a 值, (a=100) return 0; }
希望你看后 可以理解 a++ 和 ++a的区别 ,如果还有不懂的, 可以继续问
丶包菜
TA贡献158条经验 获得超233个赞
你这里错的主要是第一个和第四个,
a++
a--
都是先赋值再运算
例如:
a 100
a++ 100
//这时候上面运算完了
a-- 101
//等它运算完 才变为100
- 3 回答
- 0 关注
- 1406 浏览
添加回答
举报
0/150
提交
取消