继续模拟……
#include<cstdio>
#include<cstring>
char x[1000000];
int main(){
int key;
scanf("%d",&key);
key%=26;
while(gets(x)){
if(x[0]==EOF)return 0;
int d=strlen(x);
for(int i=0;i<d;i++){
if(x[i]>='A' && x[i]<='Z'){
putchar((x[i]-key)<'A'?x[i]-key+26:x[i]-key);
continue;
}
if(x[i]>='a' && x[i]<='z'){
putchar((x[i]-key)<'a'?x[i]-key+26:x[i]-key);
continue;
}
if(x[i]==' ')continue;
putchar(x[i]);
}
}
return 0;
}