int count = 0,i = 1;

do {
if(i % 3 == 0 ) {

System.out.println(i);
count++;
}

i++;
}
while(count == 5);打印出从1到100能被3整除的前5个数,我用其他方法都能实现,为什么这样写代码就什么都输出不出来了??

解决方案 »

  1.   

    很明显的错误。while(count==5)的话,意思是什么?只有当count==5的do里面才的执行。那自然do里边永远也得不到执行了。应该是while(count<5)
      

  2.   

    int count = 0;
    for(int i = 1; i <= 100; i++) {
       if(i % 3 ==0) {
          sysout(i);
          count++;
       }
      if (count == 5) {
          break;
      }
       
    }
      

  3.   

    下面3种方式都行                
                    int count = 0;
    for(int i = 1;i <= 100;i++) {
    if(i % 3 == 0) {
    System.out.println("i= " + i);
    count++;

    if(count == 5) break;
    }
    }
    -------------------------------
    int count = 0,i = 1;
    while(i <= 100) {
    if(i % 3 == 0) {
    System.out.println("i= " + i);
    count++;
    }
    if(count == 5) break;

    i++;
    }
    }

    ----------------------------
    int count = 0,i = 1;

    do {
    if(i % 3 == 0 ) {

    System.out.println(i);
    count++;
    }

    i++;
    }
    while(count < 5);