一起创业网-为互联网创业者服务

怎么编写加密程序c语言

```c

include

include

void caesarEncrypt(char *text, int shift) {

char ch;

for (int i = 0; text[i] != '\0'; ++i) {

ch = text[i];

// 大写字母处理

if (ch >= 'A' && ch <= 'Z') {

ch = ((ch - 'A' + shift) % 26) + 'A';

}

// 小写字母处理

else if (ch >= 'a' && ch <= 'z') {

ch = ((ch - 'a' + shift) % 26) + 'a';

}

text[i] = ch;

}

}

int main() {

char message;

int shift;

printf("请输入要加密的消息: ");

fgets(message, sizeof(message), stdin);

message[strcspn(message, "\n")] = '\0'; // 去掉fgets读取的换行符

printf("请输入加密密钥(步长): ");

scanf("%d", &shift);

caesarEncrypt(message, shift);

printf("加密后的消息: %s\n", message);

return 0;

}

```

代码解释

caesarEncrypt函数:

该函数接受一个字符串指针`text`和一个整数`shift`作为参数。

它遍历字符串中的每个字符,检查字符是否为大写字母或小写字母。

根据字符的类型,将其ASCII码值加上`shift`,然后对26取模,最后加上'A'或'a'的ASCII码值,以确保结果仍在字母表范围内。

main函数:

提示用户输入要加密的消息。

使用`fgets`读取用户输入的消息,并去掉末尾的换行符。

提示用户输入加密密钥(步长)。

调用`caesarEncrypt`函数对消息进行加密。

输出加密后的消息。

使用示例

```

请输入要加密的消息: Hello, World!

请输入加密密钥(步长): 3

加密后的消息: Khoor, Zruog!

```

这个程序是一个简单的加密示例,适用于学习和演示基本的加密技术。对于实际应用,建议使用更安全的加密算法,如AES或DES。