你波兰表达式,从右到左。
C=C+C++
C=C+(C++)

解决方案 »

  1.   

    答案是A.
    printf函数的参数从右到左运算。(与机器有关)
    第二个printf函数的第二个参数是被括起来的逗号表达式,从左到右算。
      

  2.   

    a=b=5;
    a+=b++;// a=a+b++因为 + 比 ++ 的优先级别要高,所以在执行完 a+=b++后 a=10, b=6;
    你的ABCD中没有正确的结果。我认为应该 c=c+c++; 才是结果!  (不应该加括号 ):)
      

  3.   

    如果a=5
    a=a+a++ 结果a=11,但并不意味着+优先级高于++,只不过++在后面,先加运算后自增而已。
    a=a+(a++) 结果一样
      

  4.   

    int c=5;  
    printf("%d,%d,%d\n",c+=c++,c+8,++c);  1---------- 5-->c
    2--printf------ ++c --------->    6-->c
    3-----------  c+8 ------------>   6-->c
    4--- c+=c++ ---------> c = c + (c++)  ------ 6+7-->c
               or--------> c = (c++)+c    ------7+6 -->c
    A , C 不对,因为(c+c) 不是变量,  更正一下!!