- public static void main(String[] args) {
- //printNum(1456);
- int n=456;
- int sum =0;
- int m=0,h=0;
- while(n!=0){
- n /= 10;
- sum++;
- } //此时sum=3 n =0 !!!!注意 这时候n已经变了
- //再赋值一次 就解决问题
- //n = 456;
- for(int i=sum;i>0;i--){ //执行3次
- h=(int)Math.pow(10, i-1); //以第一次为例 计算10的平方
- m=n/h; // 你期望的m = n/h = 456/100 = 4,此步骤出错,得到结果为0,因为此时的n为0
- n=n%h; // n = 456%100 = 56
- System.out.println(m);
- }
- }
复制代码 |