POJ3094总结
题目思路
这个题目非常简单,主要任务就是求得每个字符所在的位置以及该字符对应在alphabet中的值。前者通过遍历标志符,后者利用下式即可求得。
x-'A'+1;
注意
这里遇到的问题是scanf()是的使用,本来计划使用scanf(“%s”,…)来输入内容的,但是发现输入中可能会有’ ‘(空格)。那么就不能用scanf()了,改用gets()函数读入一行。
深入了解scanf()/getchar()和gets()等函数,C++系列教程,C++实例教程,C++
C++如何判断输入的结束 ACM中无输入结束提示时如何判断到达EOF
代码
#include<stdio.h>
#include<string.h>
int main()
{
while(1)
{
char a[256]="";
gets(a);///
if(strcmp(a,"#")==0)
{
break;
}
int alength=strlen(a);
int sum=0;
for(int i=0;i<alength;i++)
{
if(a[i]!=' ')
{
sum+=(i+1)*(a[i]-'A'+1);
}
}
printf("%d\n",sum);
}
return 0;
}