三种方法,三种结果?

来源:4-15 编程练习

玄鉴

2016-05-04 10:02

int num=999;

int count=0;

if(num/10!=0){

num=num/10;

count++;

}

System.out.println(count)


-----------


        int count = 0;

   for (int num = 999; num / 10 > 0; num = num / 10)


   {

count++;

}

System.out.println(count); 

-----------

 int num = 999;

int count = 0;

 for(;count<10;count++)

 {

         num=num/10;

         count++;

     }while(num%10!=0);

     

System.out.println(count);

写回答 关注

2回答

  • happy_陈
    2016-05-04 14:49:33

    先说下你的代码,第一种输出1,因为条件ture,不循环;

    第二种输出2,这种判断是对的,程序也是对的,但结果要加1,count初始值为0;

    第三种条件没有作用,输出1-10的数;

    楼上的也很好,以下是我的代码

    int num = 999;

    int count = 0;

    if(num>=10){

        for(int i =1;i<10;i++){

             num= num/=10;

            if(num>1){

                continue;

            }else{

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

                break;

            }

        }

    }



  • 玄鉴
    2016-05-04 10:08:01

    int num = 999;

    int count = 0;

    {do{

      count++;

      num /= 10;

     }

    while(num > 0);

    System.out.println(count);

    没必要写什么num<999999999999这些。


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

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

1165558 学习 · 17587 问题

查看课程

相似问题