为什么第二个a的输出会是102?

来源:3-3 自增与自减运算符

渊默学编程

2019-02-19 20:15

如题所示  题目

写回答 关注

2回答

  • 咋咋唬唬赵大虎
    2019-02-19 22:41:07
    已采纳

    #include <stdio.h>

    int main()

    {

        int a =100;

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

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

        return 0;

    }

    100 //注意:a++是<取后,再运算>

    102 //注意:++a是<运算后,再取>

    注意:程序显示的是<>的信息

              所以a++取<值100>,所以显示<值100>,再运算<100+1>,实际上值已经是101了。

              ++a运算<101+1=102>后,再取<值102>,所以显示<值102>


  • 慕后端6036765
    2019-02-20 13:02:59

    printf("x=%d\n",a++);      // a++是前置形式,a的值使用后递增1,屏幕打印出来x=100,然后a=101

    printf("x=%d\n",++a);     //++a是后置形式,a的值先递增1,变成a=102, 然后屏幕打印出来x=102

C语言入门

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

926020 学习 · 20793 问题

查看课程

相似问题