int main(int argc, char* argv[])
{
//ifstream cin("test.txt");
ifstream cin("a.txt");
//calculate and store first
char c;
int sum=0;
int i=1;
while (cin.get(c))
{
if(c=='#')
break;
if(c!='/n'){
if (c!=' ')
{
sum+=i*(c-64);
}
i++;
}else{
cout<<sum<<endl;
sum=0;
i=1;
}
}
return 0;
}
int main(int argc, char* argv[])
{
//ifstream cin("test.txt");
//ifstream cin("a.txt");
//calculate and store first
char s[256]={0};
while (cin.getline(s,256))
{
if(s[0] == '#')
break;
int sum=0;
for (int i=0;i<256;i++)
{
if (s[i] == '/0' || s[i] == '/n')
{
break;
}else if(s[i] != ' '){
sum+=(s[i]-64)*(i+1);
}
}
cout<<sum<<endl;
}
return 0;
}
注意cin.getline(s,sizeof(s))读取的数据上,不包括换行,但是包括tab和空格,最后在尾部加/0.
而cin.get()会一个个读,包括换行符
而cin会忽略回车,换行,tab