虽然运行正确,但是我总感觉有问题,各位同学帮忙看看可以吗~

来源:4-15 编程练习

不可能学不会

2019-05-26 11:32

public class HelloWorld{

public static void main(String[] args){

int num = 999;

int count = 0;

for(;count<10; count++){

    if(num/10==0)

    {

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

        break;

    }

    num = num/10;

}


}

}


写回答 关注

2回答

  • Peppa_
    2019-05-26 16:02:50
    已采纳

    public class HelloWorld{

    public static void main(String[] args){

    int num = 999;

    int count = 0;

    for(;count<10; count++){

        if(num==0)

        {

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

            break;

        }

        num = num/10;

    }

    }

    }

    感觉这样符号逻辑,num可能为0


  • 恋夕
    2019-05-26 16:10:51

    题目说小于10位,那最多检验9位数。你的代码里for循环里count 变量小于10,那最大就是9,    9+1=10,你的代码最多可以检验10位数。不合题意而已,其他没问题。0.0,嘻嘻嘻

    不可能学不会

    我找到原因了,if里面不应该用先除以10来判断,因为这样的话,最后只剩个位数时,除10等于0,就不满足要求了,count就要少一位,所以我才弄的count+1。

    2019-05-26 16:16:02

    共 1 条回复 >

Java入门第一季(IDEA工具)升级版

0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始

1167374 学习 · 18748 问题

查看课程

相似问题