题解 | 凯撒加密

凯撒加密

https://www.nowcoder.com/practice/006b7917d3784371a43cfbae01a9313d

#include <stdio.h>
#include <string.h>

int main() {
    int n;
    scanf("%d",&n);
    char s[1001];
    scanf("%s",s);

    n = n % 26;//对n取模,减少循环次数
    int s_len = strlen(s);
    for(int i=0;i<s_len;i++)
    {
        s[i] = (s[i]-'a'+n)%26+'a';//将小写字母映射到0-25范围计算,再映射会字母ASCII码,实现循环错位
    }
    printf("%s\n",s);
    return 0;
}

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务