标签:
问题链接:POJ3094 Quicksum。入门练习题,用C语言编写。
题意简述:输入包含若干行,以‘#‘结束输入。每行输入大写字母开头的,包含大写字母与空格的字符串,字符数<=255个。编写一个程序将字符串转化为一串数字和。转化算法为:对于每行的每一字符,其位权按顺序分别是1、2、3、4、......;每个字符的值是,空格值为0,字母值为1-26,A=1、B=2、C=3、D=4、......、Z=26。如ACF E=1*1+2*3+3*6+4*0+5*5=50。
AC的C语言程序如下:
/* POJ3094 Quicksum */
#include <stdio.h>
int main(void)
{
int sum, base;
char c;
sum = 0;
base = 0;
while((c=getchar()) && c != '#') {
base++ ;
if('A' <= c && c <= 'Z')
sum += (c - 'A' + 1) * base;
else if(c == '\n') {
printf("%d\n", sum);
sum = 0;
base = 0;
}
}
return 0;
}标签:
原文地址:http://blog.csdn.net/tigerisland45/article/details/52199509