问答详情
源自:4-15 编程练习

怎么就警告除零错误了,就是用num除不同位数最小的数,不等于零就退出。求大神指点

public class HelloWorld{

public static void main(String[] args){

int num = 999;

int count = 0;


  for(int i=9;i>0;i--){

      

    int j=1;

    while(j<=i){

        count*=10;

        j++;

    }

    if(num/count!=0){

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

        break;

     }

    

  }


}

}


提问者:大紫菜 2015-10-06 20:15

个回答

  • 大紫菜
    2015-10-07 10:14:10

    public class HelloWorld{
    public static void main(String[] args){
    int num = 999;
    int count;
    
      for(int i=9;i>0;i--){
          
        int j=1;count=1;
        while(j<i){
            count*=10;
            j++;
        }
        //System.out.println(j+" "+count);
        if(num/count!=0){
            System.out.println("它是个"+i+"位的数!");
            break;
         }
        
      }
    
    }
    }

    这个就对了,谢谢大家!

  • 天启之魂
    2015-10-06 21:11:19

    你自己说的很清楚了  除0错误了... 你代码写的有点混乱 没看出你的用意  但是看你代码中 if(num/count!=0) 这里很明显有问题...应该就是这里除0了

    对了你count=0,然后 count*=10; count一直都是0,然后被除 当然抛出异常了