溫馨提示×

如何用c語言對字符加密

小億
250
2023-11-28 21:52:53
欄目: 編程語言

有很多方法可以用C語言對字符進(jìn)行加密。以下是一種簡單的加密方法——凱撒密碼的實現(xiàn)示例:

#include <stdio.h>

// 凱撒密碼加密函數(shù)
void caesarEncrypt(char* str, int shift) {
    int i = 0;
    while (str[i] != '\0') {
        // 判斷字符是否為字母
        if (str[i] >= 'a' && str[i] <= 'z') {
            // 加密小寫字母
            str[i] = (str[i] - 'a' + shift) % 26 + 'a';
        } else if (str[i] >= 'A' && str[i] <= 'Z') {
            // 加密大寫字母
            str[i] = (str[i] - 'A' + shift) % 26 + 'A';
        }
        i++;
    }
}

int main() {
    char str[100];
    int shift;

    printf("請輸入要加密的字符串:");
    gets(str);

    printf("請輸入加密的位移數(shù)(0-25):");
    scanf("%d", &shift);

    caesarEncrypt(str, shift);

    printf("加密后的字符串為:%s\n", str);

    return 0;
}

在這個示例中,我們使用了凱撒密碼的加密算法:對于給定的字符串,將其中的字母按照指定的位移數(shù)進(jìn)行偏移,從而實現(xiàn)加密。這個示例中使用的位移數(shù)是用戶通過鍵盤輸入的。注意:這個示例中只對字母字符進(jìn)行加密,其他字符將保持不變。

0