java中如何实现一个三位数的个位,十位,百位数分别表示出来

如题所述

int a=888;
System.out.println("个位为:"+a%10);
a=a/10;
System.out.println("十位为:"+a%10);
a=a/10;
System.out.println("百位为:"+a%10);
如上
或者
String str=String.valueOf(a);
int i=str.length();
System.out.println("个位为:"+str.charAt(i-1));
System.out.println("十位为:"+str.charAt(i-2));
System.out.println("百位为:"+str.charAt(i-3));追问

原题是这样的,有不同币值的人民币,对任意输入的一个金额,给出能组合出这个值的最佳可能,要求使用的币值个数最少,帮帮忙吧

追答

这个要数据结构动态规划算法的,不好写啊,暂时没有那个精力了,百度下吧,这个题蛮经典的,应该有现成的代码

温馨提示:内容为网友见解,仅供参考
第1个回答  2015-06-25
java中两种不同的分离十位、个位的方式
//获取最高位(百位)
b = a / 100;
获取十位c=(a%100)/10; 或者c = (a / 10) % 10;
获取个位d=a%10; 或者 d = a % 100 % 10;本回答被网友采纳
第2个回答  2019-07-31
var num = 658; //定义一个三位数
bai = Math.floor(num / 100); // 100整除向下取整得百位数
shi = Math.floor((num % 100) / 10); // 整除100得到的余数整除10向下取整数得十位
ge = num % 10 // 除10取余就可
第3个回答  2011-10-12
public void test(int money){
int count100=0; //100元钞的张数
int count50=0; //50元钞的张数
int count20=0; //20元钞的张数
int count10=0; //10元钞的张数
int count5=0; //5元钞的张数
int count1=0; //1元钞的张数

count100=money/100;
money=money%100;

count50=money/50;
money=money%50;

count20=money/20;
money=money%20;

count10=money/10;
money=money%10;

count5=money/5;
money=money%5;

count1=money/1;
money=money%1;
}
第4个回答  2011-10-11
个人理解:
1.转为STRING类型,然后截取字符串;
2.分别对100,10取整,最后对10求余;
相似回答