#include
#include
int main(void)
{
int A =1, B =2,C =3, D =4, E =5, F =6, G =7, H =8, I =9, J =10,
K =11, L =12, M =13, N =14, O =15, P =16, Q =17, R =18, S =19,
T =20, U =21, V =22, W =23, X =24, Y =25, Z =26; //對每個字母賦值//
char a[100];
int sum=0,i; //初始化sum 和 i//
a[0] = getchar(); //輸入第一個首字母//
for(i=0;a[i] != '\n';i++) //輸入剩余的字母 //
a[i+1] = getchar();
for(i=0;a[i]!='\n';i++)
sum+=a[i]; //對個字母對應的數字求和//
printf("%d\n",sum);
return 0;
}
LOVE 的計算結果應該是54,為什麼我的程序會是這麼大? 求大俠指點
首先,你用a數組來存儲輸入的字符,那麼每個字符的權重應該是字符-'A'+1才對。
所以,你的求sum的代碼應該是sum+=a[i]-'A'+1。