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

先自加减 跟 后自加减 有什么区别?

#include <stdio.h>

int main()

{

    int x = 10;

    int y = -3;

    printf("x+y=%d\n", x+y);  

    printf("x-y=%d\n", x-y);

    printf("x*y=%d\n", x*y);

    printf("x/y=%d\n", x/y);

    printf("x%y=%d\n", x%y);

    printf("++x=%d ??\n", ++x);

    printf("x++=%d ??\n", x++);

    printf("x--=%d ??\n", x--);

    printf("--x=%d ??\n", --x);

    return 0;    

}

输出:

x+y=7
x-y=13
x*y=-30
x/y=-3
x%y=1
++x=11 ??
x++=11 ??
x--=12 ??
--x=10 ??

正在回答

2 回答

顾名思义,先自加减就是,先加上1再取整体的值;后自加减就是先把值取出,在下一步运算时加1。比如printf(“++x=%d\n,++x")表示x加上1后输出为11。此事x等于11,printf(“x++=%d\n,x++”)先取出x=11再在下一步运算时加上1,所以这一步输出为11。printf(“x--=%d\n,x--”)此时x=11+1这个1为上一步的运算。然后输出x=12,在下一步运算时减去1.打字好累,不用谢我,叫我雷锋。

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

Atomshang 提问者

非常感谢!
2016-10-06 回复 有任何疑惑可以回复我~

int x=10
printf("%d\n",++x);x=10先运算x=10+1后打印x=11

printf("%d\n",x++);x由上可知是11这里先运算再打印x=11+1打印就是12
以下同理

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

Atomshang 提问者

错了吧?你这个输出是: 11 11 ps:最后x是12,但是没输出
2016-10-06 回复 有任何疑惑可以回复我~
#2

Atomshang 提问者 回复 Atomshang 提问者

11 10 X最后是11
2016-10-06 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C语言入门
  • 参与学习       924406    人
  • 解答问题       20753    个

C语言入门视频教程,带你进入编程世界的必修课-C语言

进入课程

先自加减 跟 后自加减 有什么区别?

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