首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 綜合教學

Java 基礎練習 11:正整數位數統計與逆序輸出

     編輯:Java 綜合教學

Java 基礎練習 11:正整數位數統計與逆序輸出

給定一個不超過 5 位的正整數,要求:

  1. 求該數字的位數。
  2. 逆序打印出各位數字。

代碼實現

import java.util.Scanner;

public class Eleventh {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.println("請輸入一個不多於5位的正整數:");
        int num = input.nextInt();
        int original = num;
        int count = 0;
        int reversed = 0;

        while (num > 0) {
            int digit = num % 10;
            reversed = reversed * 10 + digit;
            num /= 10;
            count++;
        }

        System.out.println(original + "的位數是:" + count + "\n" + original + "的逆序是:" + reversed);
    }
}

關鍵點解析

1. 位數統計:每次迴圈將 num 除以 10,計數器 count 加 1,直到 num 變為 0。

2. 逆序構建:利用取模運算 num % 10 獲取最後一位數字,將其加到 reversed 末尾(reversed * 10 + digit)。

3. 邊界處理:題目限制「不多於 5 位」,int 類型足夠容納(最大 99999)。若輸入 0,迴圈不執行,需額外處理(本題假設輸入正整數)。

常見變體

  • 輸入可能包含前導零(需按字符串處理)。
  • 輸出逆序時保留前導零(如 1200 -> 0021)。
  • 大整數處理(使用 BigInteger 或字符串)。

此練習強化了整數拆解、迴圈控制與數字重組的基本技巧。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved