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

为什么会输出错误

#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);”的运算呢?


正在回答

3 回答

a++是指提取a的值后再加1,如果a的赋值原本是1,那么结果就是1,但是下一条代码再用到a时,它的赋值从这个代码开始就是a+1了;++a的话就是先加1再提取结果

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

因为它没让你重现这个啊...它让输出X=0和X=2。这个printf("%d\n",a+1);只是为了说明这个会改变此时输出的值但这个a的值不会参与循环和接下来的计算

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

。。。你活到现在读的书是白读了吗?需要我告诉你方程怎么解吗?

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

举报

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

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

进入课程

为什么会输出错误

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