在Excel表中,行的序号是从1开始,列的序号是按大写字母对应,其结果是:A,B,……Z,AA,AB,……,ZZ,AAA,AAB,……,ZZZ,……。从A到ZZZ对应1到18278的数字。请编程将列号从字母转变成数字。
输入格式
多组测试数据,每组输入一行,为A到ZZZ任意一个字符串。
输出格式
每组测试数据输出一行,包含它对应的数字序号。
输入样例
A
Z
AA
ZZZ
输出样例
1
26
27
18278
#include <stdio.h>
#include <string.h>
#include <math.h>
int main()
{
char a[100];
int i,t;
double s=0.0;
while(scanf("%s",&a) != EOF){
t=strlen(a);
for(i=0;i<t;i++){
a[i]=a[i]-'A'+1;
s=s+a[i]*pow(26.0,(double)t-i-1);
}
printf("%.0f\n",s);
s=0;
}
return 0;
}