问几个C中赋值语句的问题

2025-12-15 23:29:16
推荐回答(1个)
回答1:

问题1:
1.n=n1+1,结果为3,其余都为2,n2+2,n3+3,n4+4不在计算内。
2.n=(n1+1,n2+2,n3+3,n4+4),用括号括起来的是逗号表达式,n的值就取最右边的值n4+4作为右值。
3 4.计算机读入数据是从最右边读入,为上述结果
问题2
1.z=y<0 <的优先级大于=,所以先看y<0,为假就是0,然后把0赋给z。所以Z就是0. 因为if(z=y<0)为假,if(y==0)为假,看else x=7
2.if(x=z=y) y的值为1赋给z,z的值为1,把z的值赋给x,x的值为1,为真,所以if成立,执行x=3,所以结果x=3。