为了账号安全,请及时绑定邮箱和手机立即绑定

这样输出的结果为啥是3啊

public static void main(String[] args){

      int sum=0;

      for(int i=1;i<=100&&i%3!=0;i++){

           sum+=i;

}

         System.out.println(""+sum);

    }

}

正在回答

2 回答

i%3!=0的问题。 1%3=1      2%3=2     3%3=0 也就是第3个sum终止

0 回复 有任何疑惑可以回复我~
#1

阿西o 提问者

非常感谢!
2016-06-08 回复 有任何疑惑可以回复我~

运算符的优先级问题

0 回复 有任何疑惑可以回复我~
#1

阿西o 提问者

还是不太明白。。。 能具体说明下吗
2016-06-08 回复 有任何疑惑可以回复我~
#2

willevis

错了,不好意思没看清楚,和优先级无关,是你的逻辑的问题,因为在条件判断时第一个不能被三整除时就退出了整个循环。。。你应该在for循环中用if判断
2016-06-08 回复 有任何疑惑可以回复我~
#3

阿西o 提问者 回复 willevis

额 应该是第一个能被三整除吧0.0 但是为什么会跳出循环啊,不是还有i++吗
2016-06-08 回复 有任何疑惑可以回复我~
#4

willevis 回复 阿西o 提问者

不满足条件直接跳出了,不会执行i++的
2016-06-08 回复 有任何疑惑可以回复我~
查看1条回复

举报

0/150
提交
取消

这样输出的结果为啥是3啊

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信