序言
用c来处理字符串真难受,可惜窝只会c(尴尬)
题目描述
给定一个正整数,返回它在 Excel 表中相对应的列名称。
例如,
1 -> A
2 -> B
3 -> C
…
26 -> Z
27 -> AA
28 -> AB
解题思路
如果要把任意进制的X转成B进制的Y,则分三步,初始化count=1;
1.k=X%B
2.sum=sum+kcount;
3.X=/B,count=10;
进行上述循环,直到n=0;
这题再加上一个k与字符串之间的转换就行
代码
char * convertToTitle(int n){
int sz=0;
char *sum;
sum=(char *)malloc(10);
do{
sum[9-(++sz)]=(n-1)%26+'A';//从后往前放,假设n>=1
n=(n-1)/26;
}while(n!=0);
sum[9]='\0';
return sum+9-sz;//找到头地址
}