main() { int a=5,b=5; a%=b+=a+=(a+b); printf("a=%d,b=%d",a,b);}
结果是:a=15,b=20
b=20我还搞的懂,a=15是怎么回事??我就不明白了!!?%号不是求余吗??
晕!
a%=b+=a+=(a+b) 这个表达式应该先算(a+b)结果为10,进行a+=(a+b)这一步时a的值为15了,后来的计算只是用了刚才a的值,并没有再赋给a其它的值。所以结果是:a=15,b=20。
有时间可以多看看C的基本数据类型和运算这一章节。
呵呵~
那a%在这里岂不是没用??根本没起什么作用啊!
不好意思,是我没有仔细看,不过如果a=15%20的话,a的值就是15呀!
你在什么地方看到的这样的代码???
是不是太无聊了!!是不是我们为了证明知道了加减乘除的先后顺序,要把所有的可以简化的东西都连一起算!!!
这样的东西,不用一个近的计较,知道就好!
还有很多东西要学!