密码翻译 - 牛客网
题目描述
在情报传递过程中,为了防止情报被截获,往往需要对情报用一定的方式加密,简单的加密算法虽然不足以完全避免情报被破译,但仍然能防止情报被轻易的识别。我们给出一种最简的的加密方法,对给定的一个字符串,把其中从a-y,A-Y的字母用其后继字母替代,把z和Z用a和A替代,则可得到一个简单的加密字符串。
输入描述:
读取这一行字符串,每个字符串长度小于80个字符
输出描述:
对于每组数据,输出每行字符串的加密字符串。
示例1
输入
Hello! How are you!
输出
Ifmmp! Ipx bsf zpv!
解题思路
题目很简单,只需要对字符串遍历一遍判定即可。
但是需要注意的是,输入时字符串带空格字符,所以在输入的时候用 stdio.h 库的gets() 函数。
1 #include <stdio.h> 2 #include <string.h> 3 int main() 4 { 5 char s[100]; 6 gets(s); 7 for(int i=0;i<strlen(s);i++) 8 { 9 if((s[i]>='a' && s[i] <='y')||(s[i]>='A' && s[i] <='Y')) 10 s[i] = s[i] + 1; 11 else if(s[i] == 'Z') s[i] = 'A'; 12 else if(s[i] == 'z') s[i] = 'a'; 13 } 14 printf("%s\n",s); 15 return 0; 16 }