说明具体计算过程

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

慕虎4930148

2017-07-19 16:19

#include <stdio.h>int main(){
  int n1 = 1;  int n2 = 2;  int r1 = n1 + n2 + ( n2 ++ );  printf("r1 = %d, n2 = %d \n", r1, n2);
  return 0;}


写回答 关注

2回答

  • 慕数据9461178
    2017-07-19 16:42:02
    已采纳

    这里就涉及到a++和++a 的区别了 ,通俗的说,a++是先取值在自增一,而++a是先自增一再取新的值。代码r1实质就是1+2+2=5,而在输出的时候,已经是加一后的新值了,祝成功

  • _酒窝没酒_
    2017-07-19 16:41:38

    输出结果为:r1=6,n2=3

    因为()的优先级高于"+"号,所以先进行括弧里面的运算,但由于n2++是先使用值再加一,所以此时(n2++)的值为2,当再次使用n2时,n2的值会变为3,所以r1=1+3+2=6。

    慕虎4930...

    实际的运行结果是r1=5,n2=3, 在计算过程中n2的值是2

    2017-07-19 16:51:19

    共 1 条回复 >

C语言入门

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

926021 学习 · 20793 问题

查看课程

相似问题