qq_慕村4140769
2021-08-11 14:48
public class HelloWorld{
public static void main(String[] args){
int num = 999999999;
int count = 0;
int i;
for (i=1;i<=num;i=i*10){
count++;
}
System.out.println("它是个"+count+"位的数");
}
}
我觉得这样也行吧,到底有啥区别呢
没有问题要创造问题,加个给出x位数最大值的功能 😜
public class HelloWorld{ public static void main(String[] args){ int num = 999; int count = 0; int maxLength = 9; // int最大值2147483647,可计算的值最大不能超过9位数 if(maxLength > 9 || num < 1) { System.out.println("请输入小于10位且大于0的数"); } else { int max = 0; int i = 0; while (i < maxLength) { max = (max * 10) + 9; while(num <= max && num != 0 ) { count++; num /= 10; } if (num == 0) { break; } i++; } System.out.println("它是个" + count + "位的数!"); System.out.println(count + "位数最大值为" + max); } } }
你这样写只适用于这一个例子,嵌套循环是解决大多数类似问题,适用性更广
Java入门第一季(IDEA工具)升级版
1165552 学习 · 17587 问题
相似问题