慕虎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;}
这里就涉及到a++和++a 的区别了 ,通俗的说,a++是先取值在自增一,而++a是先自增一再取新的值。代码r1实质就是1+2+2=5,而在输出的时候,已经是加一后的新值了,祝成功
输出结果为:r1=6,n2=3
因为()的优先级高于"+"号,所以先进行括弧里面的运算,但由于n2++是先使用值再加一,所以此时(n2++)的值为2,当再次使用n2时,n2的值会变为3,所以r1=1+3+2=6。
C语言入门
926021 学习 · 20793 问题
相似问题