设有说明 intx=0,y=0;则执行if(x++)y=1+x;elsey=2+x;后,变量y的值是?具体算法是?
人气:175 ℃ 时间:2020-05-13 07:10:27
解答
y=3
x++表示“先用后加”
if(x++)y=1+x; 因为x=0 ,所以这一步跳过,但是执行完这一步,x变为1
elsey=2+x;成立,y=2+x被执行,所以y=3为什么x=0时 这一步跳过啊实际上应该写成if(x++==1)y=1+x; 但是就算法而言。一般 0 被当作false ,而非0被认为是 true我在我本机上用java测试,public class test{public static void main(String[] arg){int x=0 , y= 0 ;if(x++ = 1) y=1+x;else y=2+xSystem.out.println("y=" + y) ; }}
推荐
猜你喜欢
- 甲乙丙三人在AB两块地植树,其中甲
- When did you leave?
- 抛物线过(-1,-1)点,对称轴是直线x+2=0.且在x轴上截线段的长度为2倍根号2,求抛物线解析式.
- 如图所示,水平传送带以2m/s的速度匀速运行,将一质量为2kg的工件,设传送带速度不变,工件与传送带之间的动摩擦因素为u=0.2,放手后工件在3s内位移是多少?摩擦力做多少功?
- 三相电星星连接和三角型连接的区别在哪?
- 小红的妈妈今年40岁,但她只过了10个生日,这是为什么?
- 把一个边长为4cm的正方形剪成一个最大的圆,面积减少了百分之几?(算术法做题,列式简单点)急用!
- 一密闭容器封闭着一定质量的理想气体,若气体温度升高,保持气体体积不变,则气体的____