hdoj2055An easy problem

来源:互联网 发布:中国高铁功臣 知乎 编辑:程序博客网 时间:2024/06/16 01:00
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).
 

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
6R 1P 2G 3r 1p 2g 3
 

Sample Output
191810-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);}}


0 0
原创粉丝点击