package com.imooc;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); } }
3 回答
已采纳
qq_青枣工作室_0
TA贡献446条经验 获得超754个赞
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++ 放到括号 {} 的外面。
qq_狼神_03279945
TA贡献4条经验 获得超0个赞
有两个错误。
第一个错误是,你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); } }
添加回答
举报
0/150
提交
取消