为了账号安全,请及时绑定邮箱和手机立即绑定

怎么实现不了?


/*

* 判断一个数(小于10位)的位数。 输入999,则输出 “它是个3位的数!”

*/


int num = 999;

int count = 0;

if (num != 0 && num <= 999999999) {

do {

count++;

num = num / 10;

}

while{

(num<10);

}

System.out.println("它是个" + count + "位的数!");

} else{

System.out.println("输入有误");

}


}

}


正在回答

5 回答

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>=1);


System.out.println("它是个" + count + "位的数!");

} else{

System.out.println("输入有误");

}

}

}


0 回复 有任何疑惑可以回复我~
#1

慕哥5975565 提问者

非常感谢!
2018-05-11 回复 有任何疑惑可以回复我~
#2

qq_Yourebeautif_0 回复 慕哥5975565 提问者

num为什么要除以10
2018-05-16 回复 有任何疑惑可以回复我~
#3

HardW 回复 qq_Yourebeautif_0

除以10相当于进行了记录一位的工作,毕竟是10进制
2018-05-22 回复 有任何疑惑可以回复我~
#4

慕无忌5921142

你换个数字输出一下就会有问题,不要999,你换100数出的值是2位数,求解决?
2018-05-25 回复 有任何疑惑可以回复我~
查看1条回复

do while有bug吧

0 回复 有任何疑惑可以回复我~

public static void main(String[] args){

Scanner sr=new Scanner(System.in);

int num =sr.nextInt();

int count = 0;

if (num > 0 && num <= 1000000) {

while(num!=0) {

count++;

num/=10;

}

System.out.println("它是"+count+"位数");

}else {

System.out.println("输出错误!");

}

}


0 回复 有任何疑惑可以回复我~

Scanner sr=new Scanner(System.in);

int num =sr.nextInt();

int count = 0;

if (num != 0 && num <= 999999999) {

do {

count++;

num/=10;

}while(num>1);

System.out.println("它是"+count+"位数");

}else {

System.out.println("输出错误!");

}

为啥输入数字会减少一位数

0 回复 有任何疑惑可以回复我~
#1

慕无忌5921142

就是输入1000会显示3位这代码有问题
2018-05-25 回复 有任何疑惑可以回复我~
#2

慕无忌5921142 回复 慕无忌5921142

求解决
2018-05-25 回复 有任何疑惑可以回复我~
#3

慕粉1706144382

while(num>0);
2018-06-27 回复 有任何疑惑可以回复我~

public class HelloWorld{

public static void main(String[] args){

int num = 999;

int count = 0;

do

{

    count++;

    num=num/10; 

}

while(num >0&&num<=999999999);


System.out.println("它是个" + count + "位的数!");

}

}


0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

怎么实现不了?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信