1、D
a(a就 a2、x=(y=4,z=16,k=32) 括号内部是 逗号运算符,他的运算规则为 从左到右进行运算,并且返回 最后一个 位置的 值 即 返回 32 ,就是 x=32 了
3、 x+=y;y=x-y;y=x-y;x-=y;
分别可以写成一下
x=x+y;
y=x-y;
y=x-y;
x=x-y;
建议 多看看C语言的基础知识
1.当于条件表达式:
我们先看看这个吧:
int x=a 我们再来看看题目中的式子:a2.这是个逗号表达式:最后式子的值就是最后一个逗号的值;所以就是32
3.x+=y; x=x+y,y=y;
y=x-y; x=x+y,y=x;
y=x-y; x=x+y,y=x
x-=y; x=y,y=x
所以选择D
24、D
a如果a当前a=1,b=2,a是小于b的,直接取a的值,那么结果为1
28、C
31、C
举个列子初始:X=2,Y=1。
x+=y相当于x=x+y=2+1→x=3;
y=x-y相当于y=3-1→y=2;
y=x-y相当于y=3-2→y=1;
x-=y相当于x=x-y=3-1→2;
所以到最后x,y的值都没有变
24. 这样看就明了, (1<2)?1:((3<4)?1:4),先计算<, 再从右往左算,值是1,
28. 逗号运算表达式,值取最后一个,所以x=32
31.
x=x+y;
y=x-y; // y=(x+y)-y
y=x-y; // y=(x+y)-((x+y)-y)
x=x-y; // x=(x+y)-y
结果,y, x不变