public class l4 {
public static void main(String[] args){
int num = 999;
if(num%10<1){
System.out.println("他是个1位数");
}else if(num%100<1){
System.out.println("他是个2位数");
}else if(num%1000<1){
System.out.println("他是个3位数");
}else if(num%10000<1){
System.out.println("他是个4位数");
}else if(num%100000<1){
System.out.println("他是个5位数");
}else if(num%1000000<1){
System.out.println("他是个6位数");
}else if(num%10000000<1){
System.out.println("他是个7位数");
}else if(num%100000000<1){
System.out.println("他是个8位数");
}else if(num%1000000000<1){
System.out.println("他是个9位数");
}else{
System.out.println("请输入小于10位的数字");
}
}
}
// 哈?还有你这个代码不是循环的知识吧?这不是if条件判断语句吗?并且你的判断条件不应该是求余吧?直接除就行了呀,求余的话好像都满足条件诶~ //main方法里面 代码改为如下: int num = 999; if(num/10<1){ System.out.println("他是个1位数"); }else if(num/100<1){ System.out.println("他是个2位数"); }else if(num/1000<1){ System.out.println("他是个3位数"); }else if(num/10000<1){ System.out.println("他是个4位数"); }else if(num/100000<1){ System.out.println("他是个5位数"); }else if(num/1000000<1){ System.out.println("他是个6位数"); }else if(num/10000000<1){ System.out.println("他是个7位数"); }else if(num/100000000<1){ System.out.println("他是个8位数"); }else if(num/1000000000<1){ System.out.println("他是个9位数"); }else{ System.out.println("请输入小于10位的数字"); }
//像这个循环比较好点~ 完美 public class HelloWorld{ public static void main(String[] args){ int num = 656; int count = 0; if(num>=0 && num<=999999999){ while(num != 0){ count++; num/=10; } System.out.println("它是个"+count+"位的数!"); }else{ System.out.println("输入有误!"); } } }
目测循环的代码没有问题,可能是浏览器缓存问题吧?!多提交几次试试~