<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 //編譯目標(biāo)文件 #gcc helloworld.o -o helloworld //編譯成可執(zhí)行exe #helloworld //運行exe
    數(shù)據(jù)加載中……
    Java中實現(xiàn)數(shù)字金額到中文大寫字符的轉(zhuǎn)換
    /**
      * <p>Title: money</p>
      * <p>Description: 
      *   *類名:money
      *   *函數(shù):String PositiveIntegerToHanStr(String NumStr)   負責(zé)把小數(shù)點前面的數(shù)轉(zhuǎn)換為大寫中文
      *    *函數(shù):?String NumToRMBStr(double val)   負責(zé)把輸入的double型的數(shù)轉(zhuǎn)換為大寫中文
      *   *注意java程序轉(zhuǎn)換的范圍是:小數(shù)點前面15位(已測試通過  
      *   * <p>Company: </p>
      * 鐘偉海
      * 
    @version 1.0
      
    */  
    import java.lang.Math;

    public class money{
     
    //調(diào)試時用main函數(shù)
     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)
     {     
    // 輸入字符串必須正整數(shù),只允許前導(dǎo)空格(必須右對齊),不宜有前導(dǎo)零
      String RMBStr = "";
      
    boolean lastzero = false;
      
    boolean hasvalue= false;       // 億、萬進位前有數(shù)值標(biāo)記
      int len,n;
      len 
    = NumStr.length();
      
    if( len > 15 ) return "數(shù)值過大!";
      
    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 "輸入含非數(shù)字字符!";
       
       
    if( n!=0 ) {
        
    if( lastzero ) RMBStr += HanDigiStr[0];  // 若干零后若跟非零值,只顯示一個零
                
    // 除了億萬前的零不帶到后面
        
    //if( !( n==1 && (i%4)==1 && (lastzero || i==len-1) ) )    // 如十進位前有零也不發(fā)壹音用此行
        if!( n==1 && (i%4)==1 && i==len-1 ) )     // 十進位處于第一位不發(fā)壹音
         RMBStr += HanDigiStr[n];
        RMBStr 
    += HanDiviStr[i];    // 非零值后加進位,個位為空
        hasvalue = true;                                    // 置萬進位前有值標(biāo)記
        
       }
    else {
        
    if( (i%8)==0 || ((i%8)==4 && hasvalue) )  // 億萬之間必須有非零值方顯示萬
         RMBStr += HanDiviStr[i];   // “億”或“萬”
       }
       
    if( i%8==0 ) hasvalue = false ;      // 萬進位前有值標(biāo)記逢億復(fù)位
       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 "數(shù)值位數(shù)過大!";
      
    // 四舍五入到分  
      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] + "";
       }
     
     
    // 下一行可用于非正規(guī)金融場合,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)  編輯  收藏 所屬分類: 工作總結(jié)

    主站蜘蛛池模板: 亚洲日日做天天做日日谢| 特级做A爰片毛片免费69| 黄床大片30分钟免费看| 久久精品九九亚洲精品| 丁香五月亚洲综合深深爱| 国产免费看插插插视频| 西西大胆无码视频免费| 色猫咪免费人成网站在线观看| 一级毛片不卡免费看老司机| 亚洲第一成年免费网站| 亚洲伊人久久大香线蕉影院| 激情内射亚洲一区二区三区| 国产成人A人亚洲精品无码| 亚洲国产综合久久天堂| 国产成人无码免费视频97| 成年午夜视频免费观看视频| 4hu四虎最新免费地址| 久久国产乱子伦免费精品| 免费av片在线观看网站| 国产一级一毛免费黄片| 久久久精品视频免费观看| 一边摸一边桶一边脱免费视频| 老司机午夜免费视频| 色视频在线观看免费| 免费一级特黄特色大片| 青草青草视频2免费观看| 国产精品亚洲一区二区三区久久| 亚洲美国产亚洲AV| 中文字幕乱码亚洲无线三区| 亚洲色中文字幕在线播放| 亚洲色大18成人网站WWW在线播放 亚洲色大成WWW亚洲女子 | 67194熟妇在线永久免费观看| 18禁黄网站禁片免费观看不卡| 免费A级毛片无码A∨中文字幕下载| 亚洲欧洲免费视频| 69影院毛片免费观看视频在线| **aaaaa毛片免费| 亚洲免费综合色在线视频| 在线a毛片免费视频观看| 国产无遮挡吃胸膜奶免费看视频 | 亚洲一卡二卡三卡|