永发信息网

初学JAVA求设int x=10 int y=5 z=7计算结果 z=x++*y++ z=++x - y-- z=x++*2/y-- z=x++ - ++y

答案:5  悬赏:70  手机版
解决时间 2021-02-27 18:24
  • 提问者网友:杀生予夺
  • 2021-02-26 17:42
这个怎么计算出结果,请附运算过程说明谢了
最佳答案
  • 五星知识达人网友:低血压的长颈鹿
  • 2021-02-26 18:39
public class Test {
public static void main(String[] args) {
int x=10,y=5 ,z=7;
z=x++*y++ ;//这里的++都在后面所以先计算后++
//也就是z=10*5;然后x=11;y=6;
System.out.println("z="+z+" x="+x+" y="+y);
z=++x - y--;//这里x的++前面先++那么x=12;y=6,则z=12-6=6然后y--。y=5了x=12;
System.out.println("z="+z+" x="+x+" y="+y);
z=x++*2/y--;
System.out.println("z="+z+" x="+x+" y="+y);
//++在后面,所以x=12,y=5先计算z=x*2/y=12*2/5=4(这里取整数部分了),然后x++,y--,所以x=13,y=4;
z=x++ - ++y;
//这里显示x的++后y++在钱,先y++,y=5,然后z=13-5=8
System.out.println("z="+z+" x="+x+" y="+y);

}
}
z在这里没什么其他意思,只是一个他们计算的值的代表,
你可以运行下我的程序,对照的看看会明白的
全部回答
  • 1楼网友:傲气稳了全场
  • 2021-02-26 22:00

先明白x++||y++||z++这个表达式结果只有可能2个值,0和1,||运算符有个特点,如果第一个表达式结果是真,则后面的表达式将不执行,因为x=5,结果非零,所以这里只执行了一个x++,最后x=6,y=6,z=8

  • 2楼网友:老鼠爱大米
  • 2021-02-26 20:51
从运行的提示就知道了
  • 3楼网友:迟山
  • 2021-02-26 20:41
z=x++ * y++ ; //结果z=50,x=11,y=6 ,先运行x*y ,再运行x自增,y自增 z=++x - y-- ;//运行前x=11,y=6,结果z=6, x=12,y=5 这步x先自增1 在减6,y再自减1 后面类同
  • 4楼网友:骨子里都是戏
  • 2021-02-26 19:29
主要就是要区分后++和前++,后++是运算完后再加,前++是先加再运算,故 第一个:z=x*y=50 第二个:z=(x+1)-y=6 第三个:z=x*2/y=4 第四个:z=x-(y+1)=4
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯