基础编程50题

【习题24】求整数的位数和逆序输出

2017-03-26  本文已影响78人  Xplorist

【程序24】
题目:给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。

package com.share.test21_30;

import java.util.Arrays;

/**
 * 【程序24】题目:<br>
 * 给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。
 * 
 * @author brx
 */
public class Test24 {
    public static void main(String[] args) {
        test();
        test1();
    }

    /**
     * 思路1:<br>
     * 将整数转化为字符串,通过字符串的方法直接就处理出结果了
     */
    public static void test() {
        int a = 35412;
        String s = String.valueOf(a);
        System.out.println("这个数是" + s.length() + "位数");
        StringBuffer sb = new StringBuffer(s);
        sb.reverse();
        System.out.println(sb.toString());
    }

    /**
     * 思路2:<br>
     * 整型数据通过渐变赋值来找出是几位数,和找出每一位数
     */
    public static void test1() {
        int a = 35412;
        int a1 = a;
        int count = 0;
        while (a > 0) {
            a /= 10;
            count++;
        }
        System.out.println("这个数是" + count + "位数");
        int[] ar = new int[count];
        for (int i = 0; i < count; i++) {
            ar[i] = a1 % 10;
            a1 = (a1 - ar[i]) / 10;
        }
        System.out.println(Arrays.toString(ar));
    }
}

上一篇 下一篇

猜你喜欢

热点阅读