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

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

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

    posts - 104,  comments - 34,  trackbacks - 0
    1.現在輸入n個數字,以逗號,分開;然后可選擇升或者降序排序;按提交鍵就在另一頁面顯示按什么排序,結果為,提供reset
    import java.util.*;
    public class bycomma{
    public static String[] splitStringByComma(String source){
       if(source==null||source.trim().equals(""))
        return null;
       StringTokenizer commaToker = new StringTokenizer(source,",");
       String[] result = new String[commaToker.countTokens()];
       int i=0;
       while(commaToker.hasMoreTokens()){
        result[i] = commaToker.nextToken();
        i++;
       }
       return result;
    }
    public static void main(String args[]){
    String[] s = splitStringByComma("5,8,7,4,3,9,1");
    int[] ii = new int[s.length];
    for(int I = 0;i<s.length;i++){
    ii[i] =Integer.parseInt(s[i]);
    }
        Arrays.sort(ii);
        //asc
        for(int i=0;i<s.length;i++){
        System.out.println(ii[i]);
        }
        //desc
        for(int i=(s.length-1);i>=0;i--){
        System.out.println(ii[i]);
        }
    }
    }
    2.金額轉換,阿拉伯數字的金額轉換成中國傳統的形式如:(¥1011)->(一千零一拾一元整)輸出。
    Package test.format;
    import java.text.NumberFormat;
    import java.util.HashMap;
    public class SimpleMoneyFormat {
      public static final String EMPTY = "";
      public static final String ZERO = "零";
      public static final String ONE = "壹";
      public static final String TWO = "貳";
      public static final String THREE = "叁";
      public static final String FOUR = "肆";
      public static final String FIVE = "伍";
      public static final String SIX = "陸";
      public static final String SEVEN = "柒";
      public static final String EIGHT = "捌";
      public static final String NINE = "玖";
      public static final String TEN = "拾";
      public static final String HUNDRED = "佰";
      public static final String THOUSAND = "仟";
      public static final String TEN_THOUSAND = "萬";
      public static final String HUNDRED_MILLION = "億";
      public static final String YUAN = "元";
      public static final String JIAO = "角";
      public static final String FEN = "分";
      public static final String DOT = ".";

      private static SimpleMoneyFormat formatter = null;
      private HashMap chineseNumberMap = new HashMap();
      private HashMap chineseMoneyPattern = new HashMap();
      private NumberFormat numberFormat = NumberFormat.getInstance();

      private SimpleMoneyFormat() {
        numberFormat.setMaximumFractionDigits(4);
        numberFormat.setMinimumFractionDigits(2);
        numberFormat.setGroupingUsed(false);

        chineseNumberMap.put("0", ZERO);
        chineseNumberMap.put("1", ONE);
        chineseNumberMap.put("2", TWO);
        chineseNumberMap.put("3", THREE);
        chineseNumberMap.put("4", FOUR);
        chineseNumberMap.put("5", FIVE);
        chineseNumberMap.put("6", SIX);
        chineseNumberMap.put("7", SEVEN);
        chineseNumberMap.put("8", EIGHT);
        chineseNumberMap.put("9", NINE);
        chineseNumberMap.put(DOT, DOT);

        chineseMoneyPattern.put("1", TEN);
        chineseMoneyPattern.put("2", HUNDRED);
        chineseMoneyPattern.put("3", THOUSAND);
        chineseMoneyPattern.put("4", TEN_THOUSAND);
        chineseMoneyPattern.put("5", TEN);
        chineseMoneyPattern.put("6", HUNDRED);
        chineseMoneyPattern.put("7", THOUSAND);
        chineseMoneyPattern.put("8", HUNDRED_MILLION);
      }

      public static SimpleMoneyFormat getInstance() {
        if (formatter == null)
          formatter = new SimpleMoneyFormat();
        return formatter;
      }

      public String format(String moneyStr) {
        checkPrecision(moneyStr);
        String result;
        result = convertToChineseNumber(moneyStr);
        result = addUnitsToChineseMoneyString(result);
        return result;
      }

      public String format(double moneyDouble) {
        return format(numberFormat.format(moneyDouble));
      }

      public String format(int moneyInt) {
        return format(numberFormat.format(moneyInt));
      }

      public String format(long moneyLong) {
        return format(numberFormat.format(moneyLong));
      }

      public String format(Number moneyNum) {
        return format(numberFormat.format(moneyNum));
      }

      private String convertToChineseNumber(String moneyStr) {
        String result;
        StringBuffer cMoneyStringBuffer = new StringBuffer();
        for (int I = 0; I < moneyStr.length(); i++) {
          cMoneyStringBuffer.append(chineseNumberMap.get(moneyStr.substring(I, I + 1)));
        }
        //拾佰仟萬億等都是漢字里面才有的單位,加上它們
        int indexOfDot = cMoneyStringBuffer.indexOf(DOT);
        int moneyPatternCursor = 1;
        for (int I = indexOfDot - 1; I > 0; i--) {
          cMoneyStringBuffer.insert(I, chineseMoneyPattern.get(EMPTY + moneyPatternCursor));
          moneyPatternCursor = moneyPatternCursor == 8 ? 1 : moneyPatternCursor + 1;
        }

        String fractionPart = cMoneyStringBuffer.substring(cMoneyStringBuffer.indexOf("."));
        cMoneyStringBuffer.delete(cMoneyStringBuffer.indexOf("."), cMoneyStringBuffer.length());
        while (cMoneyStringBuffer.indexOf("零拾") != -1) {
          cMoneyStringBuffer.replace(cMoneyStringBuffer.indexOf("零拾"), cMoneyStringBuffer.indexOf("零拾") + 2, ZERO);
        }
        while (cMoneyStringBuffer.indexOf("零佰") != -1) {
          cMoneyStringBuffer.replace(cMoneyStringBuffer.indexOf("零佰"), cMoneyStringBuffer.indexOf("零佰") + 2, ZERO);
        }
        while (cMoneyStringBuffer.indexOf("零仟") != -1) {
          cMoneyStringBuffer.replace(cMoneyStringBuffer.indexOf("零仟"), cMoneyStringBuffer.indexOf("零仟") + 2, ZERO);
        }
        while (cMoneyStringBuffer.indexOf("零萬") != -1) {
          cMoneyStringBuffer.replace(cMoneyStringBuffer.indexOf("零萬"), cMoneyStringBuffer.indexOf("零萬") + 2, TEN_THOUSAND);
        }
        while (cMoneyStringBuffer.indexOf("零億") != -1) {
          cMoneyStringBuffer.replace(cMoneyStringBuffer.indexOf("零億"), cMoneyStringBuffer.indexOf("零億") + 2, HUNDRED_MILLION);
        }
        while (cMoneyStringBuffer.indexOf("零零") != -1) {
          cMoneyStringBuffer.replace(cMoneyStringBuffer.indexOf("零零"), cMoneyStringBuffer.indexOf("零零") + 2, ZERO);
        }
        if (cMoneyStringBuffer.lastIndexOf(ZERO) == cMoneyStringBuffer.length() - 1)
          cMoneyStringBuffer.delete(cMoneyStringBuffer.length() - 1, cMoneyStringBuffer.length());
        cMoneyStringBuffer.append(fractionPart);

        result = cMoneyStringBuffer.toString();
        return result;
      }


      private String addUnitsToChineseMoneyString(String moneyStr) {
        String result;
        StringBuffer cMoneyStringBuffer = new StringBuffer(moneyStr);
        int indexOfDot = cMoneyStringBuffer.indexOf(DOT);
        cMoneyStringBuffer.replace(indexOfDot, indexOfDot + 1, YUAN);


    1. 以下三條輸出語句分別輸出什么?[C易]
    char str1[]       = "abc";
    char str2[]       = "abc";
    const char str3[] = "abc";
    const char str4[] = "abc";
    const char* str5  = "abc";
    const char* str6  = "abc";
    cout << boolalpha << ( str1==str2 ) << endl; // 輸出什么?
    Cout << boolalpha << ( str3==str4 ) << endl; // 輸出什么?
    Cout << boolalpha << ( str5==str6 ) << endl; // 輸出什么?

    13. 非C++內建型別 A 和 B,在哪幾種情況下B能隱式轉化為A?[C++中等]
    答:
    a. class B : public A { ……} // B公有繼承自A,可以是間接繼承的
    b. class B { operator A( ); } // B實現了隱式轉化為A的轉化
    c. class A { A( const B& ); } // A實現了non-explicit的參數為B(可以有其他帶默認值的參數)構造函數
    d. A& operator= ( const A& ); // 賦值操作,雖不是正宗的隱式類型轉換,但也可以勉強算一個

    12. 以下代碼中的兩個sizeof用法有問題嗎?[C易]
    void UpperCase( char str[] ) // 將 str 中的小寫字母轉換成大寫字母
    {
        for( size_t i=0; i<sizeof(str)/sizeof(str[0]); ++I )
            if( 'a'<=str[i] && str[i]<='z' )
                str[i] -= ('a'-'A' );
    }
    char str[] = "aBcDe";
    cout << "str字符長度為: " << sizeof(str)/sizeof(str[0]) << endl;
    UpperCase( str );
    cout << str << endl;

    7. 以下代碼有什么問題?[C難]
    void char2Hex( char c ) // 將字符以16進制表示
    {
        char ch = c/0x10 + '0'; if( ch > '9' ) ch += ('A'-'9'-1);
        char cl = c%0x10 + '0'; if( cl > '9' ) cl += ('A'-'9'-1);
        cout << ch << cl << ' ';
    }
    char str[] = "I love 中國";
    for( size_t i=0; i<strlen(str); ++I )
        char2Hex( str[i] );
    cout << endl;

    4. 以下代碼有什么問題?[C++易]
    struct Test
    {
        Test( int ) {}
        Test() {}
        void fun() {}
    };
    void main( void )
    {
        Test a(1);
        a.fun();
        Test b();
        b.fun();
    }

    5. 以下代碼有什么問題?[C++易]
    cout << (true?1:"1") << endl;

    8. 以下代碼能夠編譯通過嗎,為什么?[C++易]
    unsigned int const size1 = 2;
    char str1[ size1 ];
    unsigned int temp = 0;
    cin >> temp;
    unsigned int const size2 = temp;
    char str2[ size2 ];

    9. 以下代碼中的輸出語句輸出0嗎,為什么?[C++易]
    struct CLS
    {
        int m_i;
        CLS( int I ) : m_i(i) {}
        CLS()
        {
            CLS(0);
        }
    };
    CLS obj;
    cout << obj.m_i << endl;

    10. C++中的空類,默認產生哪些類成員函數?[C++易]
    答:
    class Empty
    {
    public:
        Empty();                          // 缺省構造函數
        Empty( const Empty& );            // 拷貝構造函數
        ~Empty();                         // 析構函數
        Empty& operator=( const Empty& ); // 賦值運算符
        Empty* operator&();               // 取址運算符
        const Empty* operator&() const;   // 取址運算符 const
    };

    3. 以下兩條輸出語句分別輸出什么?[C++難]
    float a = 1.0f;
    cout << (int)a << endl;
    cout << (int&)a << endl;
    cout << boolalpha << ( (int)a == (int&)a ) << endl; // 輸出什么?
    Float b = 0.0f;
    cout << (int)b << endl;
    cout << (int&)b << endl;
    cout << boolalpha << ( (int)b == (int&)b ) << endl; // 輸出什么?

    2. 以下反向遍歷array數組的方法有什么錯誤?[STL易]
    vector array;
    array.push_back( 1 );
    array.push_back( 2 );
    array.push_back( 3 );
    for( vector::size_type i=array.size()-1; i>=0; --I ) // 反向遍歷array數組
    {
        cout << array[i] << endl;
    }
    文章出自http://www.ad0.cn/
    6. 以下代碼有什么問題?[STL易]
    typedef vector IntArray;
    IntArray array;
    array.push_back( 1 );
    array.push_back( 2 );
    array.push_back( 2 );
    array.push_back( 3 );
    // 刪除array數組中所有的2
    for( IntArray::iterator itor=array.begin(); itor!=array.end(); ++itor )
    {
        if( 2 == *itor ) array.erase( itor );
    }

    11. 寫一個函數,完成內存之間的拷貝。[考慮問題是否全面]
    答:
    void* mymemcpy( void *dest, const void *src, size_t count )
    {
        char* pdest = static_cast<char*>( dest );
        const char* psrc = static_cast<const char*>( src );
        if( pdest>psrc && pdest<psrc+cout ) 能考慮到這種情況就行了
        {
            for( size_t i=count-1; i!=-1; --I )
                    pdest[i] = psrc[i];
        }
        else
        {
            for( size_t i=0; i<count; ++I )
                pdest[i] = psrc[i];
        }
        return dest;
    }
    int main( void )
    {
        char str[] = "0123456789";
        mymemcpy( str+1, str+0, 9 );
        cout << str << endl;

        system( "Pause" );
        return 0;
    }
    posted on 2007-10-31 20:16 末日風情 閱讀(337) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    <2007年10月>
    30123456
    78910111213
    14151617181920
    21222324252627
    28293031123
    45678910

    常用鏈接

    留言簿(4)

    隨筆分類

    隨筆檔案

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 国产99久久久国产精免费| 亚洲AV无码成人精品区日韩| aaa毛片视频免费观看| 免费国产高清视频| 国产精品亚洲а∨无码播放麻豆| 免费看国产精品3a黄的视频| 亚洲精品二三区伊人久久| 成年女人毛片免费观看97| 精品亚洲国产成人av| 国产gav成人免费播放视频| 美女啪啪网站又黄又免费| 亚洲精品成人片在线观看| 三年片免费观看大全国语| 亚洲第一中文字幕| 久久99热精品免费观看动漫| 亚洲精品日韩专区silk| 亚洲精品在线免费观看视频| 亚洲午夜在线一区| 在线观看免费成人| 成人免费网站视频www| 亚洲线精品一区二区三区| 三年片在线观看免费大全电影| 亚洲精品白色在线发布| 国产在线98福利播放视频免费| fc2成年免费共享视频网站| 亚洲成a人片77777老司机| 免费AA片少妇人AA片直播| 亚洲午夜无码久久久久小说| www.亚洲色图.com| 国产精品免费大片| 国产亚洲精品VA片在线播放| 亚洲国产精品不卡毛片a在线| 欧洲人成在线免费| 亚洲看片无码在线视频| 在线观看亚洲精品国产| 精品国产免费人成电影在线观看| 亚洲JIZZJIZZ妇女| 亚洲av中文无码乱人伦在线播放| 欧洲精品成人免费视频在线观看 | 亚洲精品视频免费| 久久国产乱子免费精品|