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

没有循环做出来的,请大神指导下,问题出在哪里了?

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位的数字");

        }

    }

}


正在回答

3 回答


// 哈?还有你这个代码不是循环的知识吧?这不是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位的数字");
        }

 



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

昵称是JaVa 提问者

哎呀,脑子糊涂了,都用成求模运算符了,谢谢。
2016-12-23 回复 有任何疑惑可以回复我~
#2

昵称是JaVa 提问者

非常感谢!
2016-12-23 回复 有任何疑惑可以回复我~
#3

L_GNOY 回复 昵称是JaVa 提问者

不客气~ 互相学习..一起进步~ ‘_^
2016-12-23 回复 有任何疑惑可以回复我~
//像这个循环比较好点~  完美
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("输入有误!");
        }
    }
}


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

慕侠3895290

count++和num/=10是怎样联系的?看不懂哎。,。求知道
2017-01-13 回复 有任何疑惑可以回复我~

目测循环的代码没有问题,可能是浏览器缓存问题吧?!多提交几次试试~

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

举报

0/150
提交
取消

没有循环做出来的,请大神指导下,问题出在哪里了?

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