x+=y+=z相当于这个语句:y=y+z,x=x+y;
我写下执行过程,楼主看看就应该明白了。
x+=y+=z;那么y=y+z,所以y==2;x=x+y,所以x==5。
执行printf();由于x<y为假,所以x<y==1,输出1\n。
z=y=x++*3;那么y=y+x++*3,相当于y=y+x*3,x++;所以y==15,x==6;z=y,那么z==15;执行pringf();由于y>=z为真,所以输出1,6\n。
x=y>z>=5;关系运算符优先级高于赋值运算符,所以先执行y>z>=5,由于y>z为假(上面已经得到y==z==15),所以y>z==1,由于1>=5为假,所以x=0。那么x==0,y==15,z==15,输出0,15,15\n。
希望对你有些帮助。
温馨提示:答案为网友推荐,仅供参考