求一個數兩位數的個位數,十位數及百位數: int num = 53; int g = num % 10; //個位 int s = (num / 10) % 10; //十位 int b = (num / 100); //百位 下麵是用java寫的一個一般般的 拆分整數的案例 值得大伙研究研究,趣味 ...
求一個數兩位數的個位數,十位數及百位數:
int num = 53;
int g = num % 10; //個位
int s = (num / 10) % 10; //十位
int b = (num / 100); //百位
下麵是用java寫的一個一般般的 拆分整數的案例 值得大伙研究研究,趣味無窮哦
1 import java.util.Scanner; //導入輸入庫 2 class numbers 3 { 4 public static void main(String[] args) 5 { 6 //最多輸入十億位 7 //創建一個數組,遍歷輸出相應的位數 8 String[] str = new String[]{"十位","百位","千位","萬位","十萬位","百萬位","千萬位","億位","十億位","百億位","千億位"}; 9 10 System.out.println("請輸入一個數字:"); 11 Scanner sca = new Scanner(System.in); 12 13 //接受用戶輸入的數 14 long sum = sca.nextInt(); //聲明一個長整型變數 15 long sum2 = sum; //分開判斷正 負數 16 int a = 0; 17 18 for (int i = 0 ; i<32 ;i++ ) 19 { 20 //判斷用戶輸入的數是幾位數 21 if(sum/10 > 0){ //個位數大於0,為正數 22 sum = sum/10; 23 a++; 24 }else{ 25 break; 26 } 27 } 28 29 if (sum2 < 10) //如果是負數 30 { 31 long k = sum; 32 System.out.println("這個數只有個位是"+k);// 33 34 }else{ 35 //把用戶輸入的數是分解出來 36 for (int i = 0 ;i <= a ;i++ ) 37 { 38 if (i==0) 39 { 40 long c = sum2 % 10; //個位數 41 System.out.println("這個數的個位是:"+c); 42 43 }else if(i < a){ 44 //這裡要強轉一下 這個函數出來的double; 45 long new1 = (long)Math.pow(10,i); 46 47 //參數說明:m為要求方的數,n為次方數 48 long b = sum2 / new1 % 10; 49 System.out.println("這個數的"+str[i-1]+"是:"+b); 50 51 }else{ 52 long new2= (long)Math.pow(10,i); 53 long h = sum2 / new2 % 10; 54 System.out.println("這個數的"+str[i-1]+"是:"+h); 55 } 56 } 57 58 } 59 60 } 61 }
陌陌說:編程語言之間多少都是有相通的,萬變不離其宗,java本是繼承於c,c++,oc等語言,所以根本原理是不變的。