这个程序到底哪里出了问题。。。

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);

}

}


qq_82年的彬锅锅_03446807
浏览 1378回答 3
3回答

qq_青枣工作室_0

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_82年的彬锅锅_03446807

你是说i=1用空格起来

qq_狼神_03279945

有两个错误。第一个错误是,你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); } }
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java