概述
描述
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).
我们定义f ( A ) = 1,f ( A ) = - 1,f ( B ) = 2,f ( B ) = - 2,…f ( Z ) = 26,f ( Z ) = - 26;
给你一个字母x和一个数字y,你应该输出y + f ( x )的结果。
输入
On the first line, contains a number T(0< T<=10000).then T lines follow, each line is a case.each case contains a letter x and a number y(0<=y<1000).
在第一行中,包含数字T ( 0 < T < = 10000 )。随后是T行,每行是一个大小写,每个大小写包含一个字母x和一个数字y ( 0≤y < 1000 )。
输出
for each case, you should the result of y+f(x) on a line
对于每种情况,都应该将y + f ( x )的结果放在一行中
样例输入
6
R 1
P 2
G 3
r 1
p 2
g 3
样例输出
19
18
10
-17
-14
-4
代码如下
#include< stdio.h>
int main()
{
int n,i,w,y; 这里的w负责控制转换英文字符为对应数字;
char A=’A’,a=’a’,x; 定义A为‘A’这个字符,a为‘a’这个字符;
scanf(“%d”,&n); n组数据,循环n次;
while(n–)
{
scanf(“%s %d”,&x,&y); x为第一个字符,y为数字;
if(x>=’a’&&x<=’z’) if语句进行判断x这个字符是大写还是小写;
w=-(x-a+1); 如果是小写的话,a~z->1~26, -(x-a+1);
if(x>=’A’&&x<=’Z’)
w=x-A+1; 如果是大写的话直接相减 x-A+1 即可;
printf(“%dn”,w+y); 最后输出 w+y,即可;
}
return 0;
}
最后
以上就是懵懂诺言为你收集整理的a letter and a number(一封信和一个数字)代码如下的全部内容,希望文章能够帮你解决a letter and a number(一封信和一个数字)代码如下所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复