無結(jié)果,問題在哪里?
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+"位數(shù)!"); } } }
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+"位數(shù)!"); } } }
2016-07-01
舉報
2016-07-01
?int?a?=?num/10; 即a=999/10 =99,不在你這個范圍內(nèi)??梢詤⒖计渌说木幊趟悸?/p>
2016-07-01
num = 999,然后?int?a?=?num/10,所以a=99,while(a?>?0?&&?a?<?10)進不去
if循環(huán)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+"位數(shù)!");
? ? ? ? ? ?break;//所以有個break
????????????}
????}
}