样例过了,但是wa了3.4测试点,很迷惑

P1914 小书童——凯撒密码

king23 @ 2020-10-26 10:56:28

#include <stdio.h>
#include <string.h>
int main(){
    int n,len;
    char a[55];
    scanf("%d",&n);
    scanf("%s",a);
    len=strlen(a);
    for(int i=0;i<len;i++){
        a[i]+=n;
        if(a[i]>'z') a[i]=(a[i]-'a')%26+'a';
    }
    for(int i=0;i<len;i++) printf("%c",a[i]);
    return 0;
}

by Elle @ 2020-10-26 11:31:07

ASCll码可显示的只有126位,你直接a[i] + n 可能会超过126出错。


by king23 @ 2020-10-26 21:10:34

已经过了,谢谢


|