凯撒加密c语言pta
时间: 2024-05-27 14:06:09 浏览: 213
凯撒加密是一种古老的加密方法,它的基本思想是将明文中的每个字母按照一个固定的偏移量进行替换,从而得到密文。偏移量称为“密钥”,只有知道密钥的人才能解密。
在C语言中实现凯撒加密,可以先将明文中的每个字符转换为ASCII码,然后按照固定的偏移量对ASCII码进行加密,最后将加密后的ASCII码转换为字符即可。
下面是一个简单的示例代码:
```c
#include <stdio.h>
#include <string.h>
int main()
{
char plaintext[100];
int key;
printf("请输入明文:");
scanf("%s", plaintext);
printf("请输入密钥:");
scanf("%d", &key);
int len = strlen(plaintext);
for (int i = 0; i < len; i++) {
if (plaintext[i] >= 'a' && plaintext[i] <= 'z') {
// 小写字母
plaintext[i] = 'a' + (plaintext[i] - 'a' + key) % 26;
} else if (plaintext[i] >= 'A' && plaintext[i] <= 'Z') {
// 大写字母
plaintext[i] = 'A' + (plaintext[i] - 'A' + key) % 26;
}
}
printf("加密后的密文:%s\n", plaintext);
return 0;
}
```
阅读全文