我的思路咋和答案这么不同。。。。这样写奇怪吗??

来源:4-15 编程练习

尤栗卡

2017-02-22 17:29

我的思路咋和答案这么不同。。。。这样写奇怪吗??

public class HelloWorld{

public static void main(String[] args){

int num = 999;

int count = 0;

for(int i=1;num/i!=0;i*=10){

    count++;

}

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

 }

}


写回答 关注

4回答

  • 慕粉1633222867
    2017-02-22 17:56:07
    已采纳

    这样写应该也是对的~这样是和10的n次方进行比较,当达到1000时,1000大于999,999/1000值为0,由此得到其为3位数~不知道我的理解对吗?

    尤栗卡

    非常感谢!

    2017-03-01 10:02:28

    共 2 条回复 >

  • 慕粉2231214351
    2017-03-12 19:24:04

    输入999,则输出 “它是个3位的数!

    这是问题!我想这个代码直接得出结果,没有输出999.

  • BoxCon
    2017-02-28 22:56:23

    没看提示之前我也是用的这个方法

  • 慕前端5927496
    2017-02-23 09:32:53

    这思路很好啊,变通

    尤栗卡

    谢谢,我想知道这样写和官方答案相比,有没有什么缺陷,比如说极限条件下,或者是重复调用时

    2017-02-23 09:58:40

    共 1 条回复 >

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

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

1165172 学习 · 17581 问题

查看课程

相似问题