Problem Description
we define f(A) = 1, f(a) = -1, f(B) = 2, f(b) = -2, ... f(Z) = 26, f(z) = -26;
Give you a letter x and a number y , you should output the result of y+f(x).
Give you a letter x and a number y , you should output the result of y+f(x).
Input
On the first line, contains a number T.then T lines follow, each line is a case.each case contains a letter and a number.
Output
for each case, you should the result of y+f(x) on a line.
Sample Input
6 R 1 P 2 G 3 r 1 p 2 g 3
Sample Output
19 18 10 -17 -14 -4
刚开始循环进行到一半就停止了,后来在每个scanf后加个getchar();然后就AC了,不知道为什么,求大神指点
AC代码如下:
#include<stdio.h>
int main()
{
int n;
scanf("%d",&n);
getchar();
while(n--)
{
int y;
char x;
scanf("%c",&x);
getchar();
scanf("%d",&y);
getchar();
if(x>=65&&x<=90)
printf("%d\n",x-'A'+1+y);
else if(x>=97&&x<=122)
printf("%d\n",(x-'a'+1)*(-1)+y);
}
}