<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    天空是藍色的

    做好軟件為中國 #gcc -c helloworld.c -o helloworld.o //編譯目標文件 #gcc helloworld.o -o helloworld //編譯成可執行exe #helloworld //運行exe
    數據加載中……
    Java中實現數字金額到中文大寫字符的轉換
    /**
      * <p>Title: money</p>
      * <p>Description: 
      *   *類名:money
      *   *函數:String PositiveIntegerToHanStr(String NumStr)   負責把小數點前面的數轉換為大寫中文
      *    *函數:?String NumToRMBStr(double val)   負責把輸入的double型的數轉換為大寫中文
      *   *注意java程序轉換的范圍是:小數點前面15位(已測試通過  
      *   * <p>Company: </p>
      * 鐘偉海
      * 
    @version 1.0
      
    */  
    import java.lang.Math;

    public class money{
     
    //調試時用main函數
     public static void main(String args[]){
      money mon 
    = new money();
      System.out.println(
    -99999999999999.999+mon.NumToRMBStr(-99999999999999.999));
      System.out.println(
    99999999999999.999+mon.NumToRMBStr(99999999999999.999));
      System.out.println(mon.NumToRMBStr(
    100000000.00));
      System.out.println(mon.NumToRMBStr(
    100000001.00));
      
      System.out.println(mon.NumToRMBStr(
    236.21));
     }
     
     String HanDigiStr[] 
    = new String[]{"","","","","","","","","",""};

     String HanDiviStr[] 
    = new String[]{"","","","","","","","","",
         
    "","","","","","","","",
         
    "","","","","","","" };
         
     
     String PositiveIntegerToHanStr(String NumStr)
     {     
    // 輸入字符串必須正整數,只允許前導空格(必須右對齊),不宜有前導零
      String RMBStr = "";
      
    boolean lastzero = false;
      
    boolean hasvalue= false;       // 億、萬進位前有數值標記
      int len,n;
      len 
    = NumStr.length();
      
    if( len > 15 ) return "數值過大!";
      
    for(int i=len-1;i>=0;i--) {
       
    if( NumStr.charAt(len-i-1)==' ' ) continue;      
       n 
    = NumStr.charAt(len-i-1- '0';
       
    if( n<0 || n>9 ) return "輸入含非數字字符!";
       
       
    if( n!=0 ) {
        
    if( lastzero ) RMBStr += HanDigiStr[0];  // 若干零后若跟非零值,只顯示一個零
                
    // 除了億萬前的零不帶到后面
        
    //if( !( n==1 && (i%4)==1 && (lastzero || i==len-1) ) )    // 如十進位前有零也不發壹音用此行
        if!( n==1 && (i%4)==1 && i==len-1 ) )     // 十進位處于第一位不發壹音
         RMBStr += HanDigiStr[n];
        RMBStr 
    += HanDiviStr[i];    // 非零值后加進位,個位為空
        hasvalue = true;                                    // 置萬進位前有值標記
        
       }
    else {
        
    if( (i%8)==0 || ((i%8)==4 && hasvalue) )  // 億萬之間必須有非零值方顯示萬
         RMBStr += HanDiviStr[i];   // “億”或“萬”
       }
       
    if( i%8==0 ) hasvalue = false ;      // 萬進位前有值標記逢億復位
       lastzero = (n==0&& (i%4!=0);    
       }
     
      
    if( RMBStr.length()==0 ) return HanDigiStr[0];         // 輸入空字符或"0",返回"零"
      return RMBStr;
     }
     
     String NumToRMBStr(
    double val)
     {
      String SignStr 
    ="" ;
      String TailStr 
    ="";
      
    long  fraction, integer;
      
    int jiao,fen;
     
      
    if( val<0 ) {
       val 
    = -val;
       SignStr 
    = "";
       }
      
    if(val > 99999999999999.999 || val <-99999999999999.999 ) return "數值位數過大!";
      
    // 四舍五入到分  
      long temp = Math.round(val*100); 
      integer 
    = temp/100;
      fraction 
    = temp%100;
      jiao 
    = (int)fraction/10;
      fen 
    = (int)fraction%10;
      
    if( jiao==0 && fen==0 ) {
       TailStr 
    = "";
       }
      
    else {
       TailStr 
    = HanDigiStr[jiao];
       
    if( jiao!=0 )
        TailStr 
    += "";
       
    if( integer==0 && jiao==0 )                // 零元后不寫零幾分
        TailStr = "";
       
    if( fen!=0 )
        TailStr 
    += HanDigiStr[fen] + "";
       }
     
     
    // 下一行可用于非正規金融場合,0.03只顯示“叁分”而不是“零元叁分”
     
    //        if( !integer ) return  SignStr+TailStr;
     
      
    return ""+SignStr+PositiveIntegerToHanStr(String.valueOf(integer) )+""+TailStr;
     }
     
    }
    //END public class money

    此日記TrackBack地址: http://yhe.dalian.cn/trackback.do?log_id=203

    posted on 2005-11-25 09:36 bluesky 閱讀(517) 評論(0)  編輯  收藏 所屬分類: 工作總結

    主站蜘蛛池模板: 久久国产一片免费观看| 国产成人免费ā片在线观看老同学| 国产成人精品免费视频大全五级 | 国产亚洲美女精品久久| 亚洲福利精品电影在线观看| 久久九九全国免费| 亚洲乱码一二三四区国产| 国产精品va无码免费麻豆| 中文无码成人免费视频在线观看| 亚洲区视频在线观看| 亚洲第一成人影院| 免费观看成人久久网免费观看| 国产精品亚洲一区二区麻豆| 中文字幕在亚洲第一在线| 最近的中文字幕大全免费8| 最新亚洲人成无码网www电影| 精品亚洲综合久久中文字幕| 成全视频免费高清 | 久久亚洲国产午夜精品理论片| 毛片免费在线视频| 十八禁视频在线观看免费无码无遮挡骂过 | 亚洲av网址在线观看| 国产成人精品免费直播 | 亚洲av无码不卡私人影院| 3d动漫精品啪啪一区二区免费| 美美女高清毛片视频黄的一免费 | 日本免费一区二区三区四区五六区 | 亚洲videosbestsex日本| 自拍偷自拍亚洲精品第1页| 中文字幕无码不卡免费视频| 日本高清不卡aⅴ免费网站| 亚洲日本中文字幕天天更新 | 三年片在线观看免费观看大全中国| 久久亚洲日韩看片无码| 亚洲精品久久久www| 在线观看人成视频免费| 中文字幕视频免费| a毛片免费在线观看| 日韩免费在线中文字幕| 亚洲日韩精品无码专区加勒比☆ | xxxxwww免费|