public class HelloWorld { public static void main(String[] args) { int sum = 0; // 保存 1-50 之间偶数的和 int num = 2; // 代表 1-50 之间的偶数 do { num = num + 2; sum+=num; } while (num<=50); // 满足数值在 1-50 之间时重复执行循环 System.out.println(" 50以内的偶数之和为:" + sum ); } }
怎么结果是700呢?
JAVA在没有特殊跳转语句时是从上到下顺序执行代码的
你的写法让程序先在开始的时候先执行了num+2的代码
也就是说你的num初始值变成了4 因此每次sum都会多加2
一共循环了25次 所以你的结果多了2*25
只要把sum+=num语句放在num = num+2之前就好了
你把sum+=num语句放在num = num+2之前
语句有问题,2没有加 52被加进去了