景诺
2016-07-01 16:49
public class Hello1 { public static void main(String[] args) { int num = 999; int count = 0; int a = num/10; while(a > 0 && a < 10){ if(num>=1){ num=num/10; count++; } System.out.println("它是一位"+count+"位数!"); } } }
int a = num/10; 即a=999/10 =99,不在你这个范围内。可以参考其他人的编程思路
num = 999,然后 int a = num/10,所以a=99,while(a > 0 && a < 10)进不去
if循环if(num>=1)只是一个判断的要这样写用while
所以改正:
public class Hello1 {
public static void main(String[] args) {
int num = 999;
int count = 0;
int a = num/10;
while(a > 0 && a < 100000){//这个范围扩大了,但是变成了true;这里如果用if下面就不需要break
while(num>=1){//if变break
num=num/10;
count++;
}
System.out.println("它是一位"+count+"位数!");
break;//所以有个break
}
}
}
Java入门第一季(IDEA工具)升级版
1165168 学习 · 17581 问题
相似问题
回答 5
回答 1
回答 9
回答 2
回答 1