阅读量:4
有很多方法可以用C语言对字符进行加密。以下是一种简单的加密方法——凯撒密码的实现示例:
#include <stdio.h> // 凯撒密码加密函数 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("请输入加密的位移数(0-25):"); scanf("%d", &shift); caesarEncrypt(str, shift); printf("加密后的字符串为:%s\n", str); return 0; }
在这个示例中,我们使用了凯撒密码的加密算法:对于给定的字符串,将其中的字母按照指定的位移数进行偏移,从而实现加密。这个示例中使用的位移数是用户通过键盘输入的。注意:这个示例中只对字母字符进行加密,其他字符将保持不变。