• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            積木

            No sub title

              C++博客 :: 首頁 :: 聯系 :: 聚合  :: 管理
              140 Posts :: 1 Stories :: 11 Comments :: 0 Trackbacks

            常用鏈接

            留言簿(1)

            我參與的團隊

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

             

            無意中看到的一篇,挺不錯的。呵呵。收藏下。
             
            c++字符大小寫轉換

              原為某著名軟件公司試題,大意如下:請實現以下兩個函數:char toupper(char c); char tolower(char c); 分別用于將傳入的字母轉為大寫和小寫。兩個函數傳入的參數取值范圍都是[a-zA-Z],并且為ASCII編碼,實現時不用檢查參數合法性。兩個函數的實現不能使用任何形式的分支、跳轉等類型的語句或指令(特別說明:C/C++的條件操作符?:也是分支指令的一種形式,故而不能使用)。請盡可能多的寫出你知道的辦法。  

              分析解決:此題比較特別,限制嚴格,根據題目要求,排除if else、for、while、do while、switch case、?:外,能使用的語句就只有 =、+=、-=、&、|、^、++、--這些了,想要實現大小寫轉換,只能從這些語句中進行選擇思考,由于字符集為ASCII編碼,且范圍明確為[a-zA-Z],我們知道,a-z對應ASCII值為97-122,A-Z對應ASCII為65-90,觀察這些數字,可以發現97-122都大于96 ,65-90都大于64且小于96,進一步從二進制上考慮,則發現所有小寫字母對應的二進制形式為011XXXXX,大寫字母對應的二進制形式為010XXXXX,一到這里,哈哈,答案就出來了,通過位運算&和|就可實現了。代碼描述如下

             1char toupper(char c)
             2{
             3    return c & 0x5F;
             4}
             5
             6char tolower(char c)
             7{
             8    //c | 0x60也行,但不太好,因為0x60會改變結果的第7位值,根據題目意思,改變第6位值為1,而其它位保持不變就夠了。
             9    return c | 0x20;
            10}
               至于其它方法,我就沒多想了,還希望各位大俠多多分享一下哈。

            posted on 2011-11-23 14:45 Jacc.Kim 閱讀(993) 評論(0)  編輯 收藏 引用 所屬分類: VC / C++
            97精品依人久久久大香线蕉97| 久久精品国产99国产电影网| 久久久中文字幕日本| 亚洲精品成人网久久久久久| 亚洲日本va午夜中文字幕久久| 亚洲欧美日韩中文久久| 久久99精品国产麻豆宅宅| 久久午夜综合久久| 久久久久亚洲精品天堂| 久久精品免费大片国产大片| 麻豆成人久久精品二区三区免费| 久久91综合国产91久久精品| 偷窥少妇久久久久久久久| 久久国产乱子伦精品免费强| 伊人久久综合成人网| 国产亚洲美女精品久久久| 久久无码人妻一区二区三区午夜| 久久久久一级精品亚洲国产成人综合AV区 | 欧美一级久久久久久久大片| 久久亚洲美女精品国产精品| 一本大道久久香蕉成人网| 中文精品久久久久国产网址| 久久精品国产清高在天天线| 久久亚洲sm情趣捆绑调教| 久久综合伊人77777| 国产精品免费久久久久久久久| 性做久久久久久久| 一本久道久久综合狠狠爱| | 日本亚洲色大成网站WWW久久 | 亚洲国产成人精品91久久久 | 久久e热在这里只有国产中文精品99| 久久婷婷五月综合97色一本一本| 久久久www免费人成精品| 久久国内免费视频| 精品久久久无码21p发布| 中文精品久久久久人妻不卡| 亚洲精品无码专区久久久| 久久夜色精品国产噜噜噜亚洲AV| 伊人久久大香线焦AV综合影院 | 中文字幕精品久久久久人妻|