字符譯碼之一

字母譯碼,A代表數列第1列,B第2列,Z第26列,AA第27列,寫一個函數,輸入字符,輸出字符表示列號。
解題思路:字符譯碼,相當於26進制。用26進製表示十進制。

#include<stdio.h>
#include<string>
int GetNumOfColumn(char *string){
    int len = strlen(string);
    if(len < 0){
        printf("invalid input\n");
        return -1;
    }
    int temp;
    int sum = 0;
    string
    for (int i = 0; i < len; ++i){
        temp = string[i] - 'A'; 
        if(temp >= 26 || temp < 0){
            printf("invalid input\n");
            return -1;
        }
        sum = sum*26 + temp +1; // 注意
    }
    return sum;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章