问答详情
源自:4-9 Java循环语句之 for

用while循环运算,运行成功但输出错误,多了100

int sum = 0; 

    int i=1;

while(i<=100){

    i++;

    if(i%3!=0){

        sum=sum+i;

    }

} System.out.println("1到100之间不能被3整除的数之和为:" + sum);


提问者:weixin_慕桂英105242 2019-07-11 22:47

个回答

  • 慕者6013159
    2019-08-05 15:49:18

    哥们,这样是对的。我在给你举一个错的例子,也就是额外多加100

    public class HelloWorld {

        public static void main(String[] args) {

    int sum = 0; 

    int i = 1;

    while(i<=100){

       if(i % 3 != 0){

           sum = sum +i;

       }

    System.out.println("1到100之间不能被3整除的数之和为:" + sum);

       i++;

    }

    }

    }

    public class HelloWorld {

        public static void main(String[] args) {

    int sum = 0; // 保存不能被3整除的数之和

    // 循环变量 i 初始值为 1 ,每执行一次对变量加 1,只要小于等于 100 就重复执行循环

    /*for (int i = 1;              ;         ) {

    // 变量 i 与 3 进行求模(取余),如果不等于 0 ,则表示不能被 3 整除

    if (i % 3 != 0) { 

    sum = sum + i; // 累加求和

    }

    }*/

    int i = 1;

    while(i<=100){

          i++;

       if(i % 3 != 0){

           sum = sum +i;

       }

    System.out.println("1到100之间不能被3整除的数之和为:" + sum);

        

    }

    }

    }


  • qq_慕尼黑6232215
    2019-07-12 09:48:14

    把i++放到sum=sum+i后边

    本来是1加到100的,你的成了从二加到101了

  • 厄运猫
    2019-07-11 23:37:56

    public static void main(String[] args) {

    int sum=0;

    int i=0;

    while(i<100) {

    i++;

      if(i%3!=0) {

      sum=sum+i;

    }

    }System.out.println(sum);