A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

4.以下代码输出是(D )
class Demo {
        public static void main(String[] args) {
                int i = 0;
                int sum = 0;
                while (i <= 10) {
                        i++;
                        if (i % 2 != 0)
                                continue;
                        sum += i;

                }
                System.out.println(sum);
        }
}
A.  55
B.  45
C.  35
D.  30
把你的答案写出来,我会回复!

15 个回复

倒序浏览
if (i % 2 != 0)
    continue;

看到这里,就能知道答案了,跳过奇数,结果一定是偶数。D

点评

果然是技术分高的老手=、=  发表于 2014-7-29 23:10
回复 使用道具 举报
hmid 来自手机 中级黑马 2014-7-29 15:20:26
藤椅
就是打印0到10之间的偶数只和啊。0 2 4 6 8 10想加的30
回复 使用道具 举报
1到10相加才55,都去了一半了
回复 使用道具 举报
D 答案很明显嘛!把10以内所有的基数排除,偶数相加!2+4+6+8+10=30
回复 使用道具 举报
黎志勇 发表于 2014-7-29 15:19
if (i % 2 != 0)
    continue;

你这回答精炼
回复 使用道具 举报
不喜欢动脑筋,我才不写出我copy到Eclipse中,控制台给的答案是D 30呢
回复 使用道具 举报
这是一道while循环语句的问题:(1)定义了两个整形变量,并设初始值为0;(2)当i<=10满足条件时执行i++;如果i/2!=0,执行continue语句,i++;否则执行sum+=i;(3)当i=0时满足i<=10,则i=1,因为i=1不满足模2为0,所以执行continue语句,则i=2;满足模2为0,则sum=0+2=2;然后i=3,依次类推,可知只有当i为偶数时,才执行sum+=i;故sum=0+2+...+10=30.
回复 使用道具 举报
Ezreal 中级黑马 2014-7-29 17:04:25
9#
路过路过
回复 使用道具 举报
飘过!!
回复 使用道具 举报
都是高手
回复 使用道具 举报
黎志勇 发表于 2014-7-29 15:19
if (i % 2 != 0)
    continue;

精辟,怪不得是高级黑马
回复 使用道具 举报
答案是30
回复 使用道具 举报
30.取偶数吧
回复 使用道具 举报
你好吗 来自手机 中级黑马 2014-7-29 23:26:54
15#
偶数相加,大家都写出答案了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马