MENU

凯撒密码的加密与解密

April 4, 2020 • Read: 503 • 算法

解密
请注意,本文的算法只考虑了a-z的加解密,其他的方式请自己修改代码

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

int main() {
    char string[120];
    int shift,length;
    while (scanf("%s",string)!=EOF){
        scanf("%d",&shift);
        length=strlen(string);
        for (int i=0;i<length;i++){
            string[i]=(string[i]-'a'-shift+26)%26+'a';
        }
        printf("%s\n",string);
    }
    return 0;
}

加密

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

int main() {
    char string[120];
    int shift,length;
    while (scanf("%s",string)!=EOF){
        scanf("%d",&shift);
        length=strlen(string);
        for (int i=0;i<length;i++){
            string[i]=(string[i]-'a'+shift)%26+'a';
        }
        printf("%s\n",string);
    }
    return 0;
}
Archives Tip
QR Code for this page
Tipping QR Code