145、大小寫轉換

題目描述:

將一個字符由小寫字母轉換爲大寫字母

樣例
a -> A

b -> B

 

代碼實現1:

class Solution {
public:
    /**
     * @param character: a character
     * @return: a character
     */
    char lowercaseToUppercase(char character) {
        // write your code here
        int number,number1;
        number = (int)character;
        number1 = number-32;
        char number2=number1;
        return number2;
    }
};

 解題思路代碼分析:

                                                                             大小寫字母對應的ASCII碼:

大寫:

A → 65,B → 66,C → 67,D → 68,E → 69,F → 70,G → 71,H → 72,I → 73,J → 74,K → 75,L → 76,

          M → 77,N → 78,O → 79,P → 80,Q → 81,R → 82,S → 83,T → 84,U → 85,V → 86,W → 87,X → 88,  

          Y → 89,Z → 90
小寫:
       a → 97,b → 98,c → 99,d → 100,e → 101,f → 102,g → 103,h → 104,i → 105,j → 106,k → 107,l → 108,
        m → 109,n → 110,o → 111,p→ 112,q → 113,r → 114,s → 115,t → 116,u → 117,v → 118,w → 119,

        x → 120,y → 121,z → 122 

故可知大寫字母對應的ASCII碼加32就是小寫字母的ASCII,小寫字母對應的ASCII碼減32就是大寫字母的ASCII 。

  • 字母強制轉換成ASCII碼

          int number,number1;
         number = (int)character;         //將字母強制轉換成ASCII碼

  • 將ASCII碼轉化成字母

           char number2=number1;

 

 

 

簡便方法:

使用C++自帶的庫函數實現很簡單:

cctype.h文件中定義了大小寫字母相互轉換的函數: toupper:小寫字母----->大寫字母

                                                                                   tolower:大寫字母------>小寫字母

故只需要輸入:

//小寫字母轉換成大寫字母
return toupper(character);

//大寫字母轉換成小寫字母
return tolower(character);

在VS2013中測試也可驗證:

 

 

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