public class HelloWorld {
public static void main(String[] args) {
int sum = 0;
int i = 1;
do {
if (i % 2 == 0)
{
sum = sum + i;
}
i++;
} while (i <= 50);
System.out.println("50内的偶数和:" + sum);
}
}主要是把 i++ 放到括号 {} 的外面。
有两个错误。第一个错误是,你if判断语句的判断执行条件后面有一个分号,虽然编辑器不报错,但结果是错的。第二个错误是,你把i++放进了if判断语句中。想像一下,如果i % 2 != 0的话,那么就不会执行i自加1,也就是说i的值不会变,那么会一直执行下去这个do```while循环,形成死循环。还有一点,为了让程序看起来条理清晰,我们一般把i=1;写成i = 1;当然,你不这样写也没关系。修改之后的代码:package demo;
public class HelloWorld{
public static void main(String[] args){
int sum = 0;
int i = 1;
do {
if(i % 2 == 0){
sum=sum+i;
}
i++;
}while(i<=50);
System.out.println("50内的偶数和:"+sum);
}
}