标题:大家帮忙看下这是怎么回事啊?
只看楼主
zaneljp
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2008-6-29
 问题点数:0 回复次数:4 
大家帮忙看下这是怎么回事啊?
将1到20的整数依次加到sum中,知道sum大于等于100.
我的程序是这样的:
public class TestBreak {
  public static void main(String[] args) {
  int sum = 0;
  while (sum < 100) {
    for (int i = 0; i <= 20; i++)
    sum += i;
         }
  System.out.println("The sum is " + sum);
  }
}
可是运行后的结果是:The sum is 210.
这是怎么回事啊?
麻烦各位高手不吝赐教!
搜索更多相关主题的帖子: 100 void public 
2008-07-30 09:47
hwoarangzk
Rank: 4
来 自:冰封王座
等 级:贵宾
威 望:12
帖 子:1894
专家分:0
注 册:2007-7-17
得分:0 
你干吗要加一个for循环啊,一个while就够了

I'm here, as always...
2008-07-30 13:03
hwoarangzk
Rank: 4
来 自:冰封王座
等 级:贵宾
威 望:12
帖 子:1894
专家分:0
注 册:2007-7-17
得分:0 
public class A {
    public static void main(String args[]) {
        int sum = 0;
        int i = 1;
        while(sum < 100) {
            sum += i++;
        }
        System.out.println(sum);
    }    
}

你是要这样的结果吗?

I'm here, as always...
2008-07-30 13:05
tjtaida
Rank: 1
来 自:022
等 级:新手上路
帖 子:4
专家分:0
注 册:2008-7-30
得分:0 
public class TestBreak {
  public static void main(String[] args) {
  int sum = 0;
  for (int i = 0; i <= 20; i++){
    sum += i;
  }
  System.out.println("The sum is " + sum);
  }
}

轻轻的我走了,
正如我轻轻的来;
2008-07-30 16:13
hurtsky
Rank: 1
等 级:新手上路
帖 子:90
专家分:0
注 册:2008-7-10
得分:0 
你写了两个循环,满足条件后,只有在最里面的那个执行完以后,才会依次执行外面的,所以讲你的得出的结果会比预想的大。
2008-07-30 19:47



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-225878-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.236008 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved