标签:ann 研究 ati string scanner double 次方 数组 tin
求一个数两位数的个位数,十位数及百位数:
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等语言,所以根本原理是不变的。
标签:ann 研究 ati string scanner double 次方 数组 tin
原文地址:http://www.cnblogs.com/bigerf/p/6064133.html