java钱币转换 123 一百二十三和壹佰贰拾叁元

代码一:

import java.util.Scanner;
public class test {
 public static void main(String args[]) {
     int d,a,b=1,t=0;
     String s="";
     String [] shu={"零","一","二","三","四","五","六","七","八","九"};
     String [] wei={"十","百","千","万","十","百","千","亿","十","百","千","万"};
     Scanner sc=new Scanner(System.in);
     d=sc.nextInt();
     while(d!=0){
         a=d%10;
         if(a==0){
          if(t!=0&&b!=0)
                 s=shu[0]+s;
         }else if(a>0&&a<10){
          s=shu[a]+s;
         }
         if(d/10!=0&&(d/10%10!=0||t==3))
             s=wei[t]+s;
         t++;
         d=d/10;
         b=a;
     }
     String ss=s.replaceAll("零万","万零");
     System.out.println(ss);
}
}

 

 

 

代码二:

import java.io.*;
public class change{
 public String NoTranslate(String sNumber){
  String[] oneUnit = {"元","拾","佰","仟","万","拾","佰","仟","亿","拾","佰","仟","兆","拾","佰","仟"};
        String[] twoUnit = {"分","角"};
        String[] sChinese = {"零","壹","贰","叁","肆","伍","陆","柒","捌","玖"};
        int pointPos = sNumber.indexOf("."); //小数点的位置
        String sInteger;//记录整数部分
        String sDecimal;//记录小数部分
        String value="";//记录返回结果
        if(pointPos!=-1){
         //分解并记录整数部分,注意substring()的用法
         sInteger=sNumber.substring(0,pointPos);
         //分解并记录小数部分
            sDecimal=sNumber.substring(pointPos+1,
                                    pointPos+3<sNumber.length()?pointPos+3:sNumber.length());
        }else{
         //没有小数部分的情况
         sInteger=sNumber;
         sDecimal="";
        }
        //格式化整数部分,并记录到返回结果
        for(int i=0;i<sInteger.length();i++){
         int temp = Integer.parseInt(sInteger.substring(i,i+1));
         value += sChinese[temp]+oneUnit[sInteger.length()-i-1];
        }
        //格式化小数部分,并记录到返回结果
        for(int i=0;i<sDecimal.length();i++){
         int temp = Integer.parseInt(sDecimal.substring(i,i+1));
         value += sChinese[temp]+twoUnit[sDecimal.length()-i-1];
        }
        //返回结果
        return(value);
     }
     public static void main(String argument[]){
           String value="";
           try{
             BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
              value=br.readLine();
           }catch(IOException e){} 
           change c=new change();
           System.out.println(c.NoTranslate(value));
     }
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章