题意
每个英文字母都被英文字母表中该字母后第三个位置的字母替换
例如,A->D, B->E, X->A, z->c,其他不变
思路
对输入的字母,-3,如果超出字母的范围则+26再-3
代码
#include<cstdio>
#include<string.h>
using namespace std;
int main(){
char in[100];
while(scanf("%[^\n]%*c", in)!=EOF){
for(int i=0; i<strlen(in); i++){
if((in[i]>='D' && in[i]<='Z') || (in[i]>='d' && in[i]<='z'))
in[i] = in[i] - 3;
else if((in[i]>='A' && in[i]<='C') || (in[i]>='a' && in[i]<='c')) //我太蠢了第一遍这里写if,导致f输出z还一直找不到原因
in[i] = in[i] + 23;
printf("%c", in[i]);
}
printf("\n");
}
return 0;
}