十字路口向左向右
2016-09-06 21:31
public class HelloWorld{
public static void main(String[] args){
int num = 999;
int count = 0;
if(num>=0&&num<=999999999){
do{
count++;
num/=10;
}while(num!=0);
System.out.println("它是个"+count+"位的数");
}else{
System.out.println("输入有误");
}
}
}
上面回答的人都没做测试吧,我把程序运行了一遍没发现哪里有问题,运行结果也是3位。
这样表达也对, INT的无符号位存储范围在0~2^32-1,999999999在这个范围内
·
do while 是先进行一次然后再判断
你这样貌似是四位数
应该把中间循环部分改成
while(num!=0){
count++;
num/=10;
}
999999999已经超过int 类型最大数值,数值溢出
Java入门第一季(IDEA工具)升级版
1165172 学习 · 17581 问题
相似问题