=号是赋值操作,x=0是赋值不是判断,x=0赋值表达式的值永远都是0,作为if条件的话,永远为假。也就是只会执行y=2这一句,所以只有B是
if 里面是x=0,注意只有一个等于号,是赋值操作,即把0赋值给x;
就变成了if(x),if(x)的含义就是判断x是真还是假,为真执行 y=1,为假执行y=2。
x==0即是判断x是否为假,为假执行 y=2,故B选项正确。
x=0是个表达式
你可以直接理解为表达式的值是0,计算完表达式再把值赋值给x
其实也可以理解为表达式的值就是x,先执行x=0,再取x的值作为表达式的值
哪个先哪个后不影响结果。
那肯定不能选D,D不是刚好和题目相反的吗。
而只有B选项,最终y的值一定是2
而A和C,都没有明确x的值到底是什么,所以y的值不确定