public class HelloWorld{ public static void main(String[] args){ int num = 999; int count = 0; for(;num!=0;num /=10){ count+=1; } System.out.println("它是个"+count+"位的数!"); } }
系统要求来写
简单点的吧, System.out.println( String.valueOf(num).length());
如果num = 0, 那么count = 0,这不就成了 0是0位数了,而0应该是1位数吧
判断一个数(小于10位)的位数。 这个条件没用上,所以虽然是三位数,没按要求来
public class HelloWorld{ public static void main(String[] args){ int num = 999; int count = 0; if (num >= 0 && num<=999999999){ while(num != 0){ count++; num/=10; } System.out.println("它是个"+ count+"位的数!"); } else{ System.out.println("输入有误!"); } } }
这样写没有问题