用C语言实现一个简单替代密码算法程序
时间: 2024-02-03 14:13:55 浏览: 98
以下是一个简单的替代密码算法程序,使用C语言实现:
```c
#include <stdio.h>
#include <string.h>
int main()
{
char plaintext[100], ciphertext[100];
int key[26] = {10, 15, 3, 20, 9, 12, 25, 6, 16, 17, 1, 22, 5, 11, 8, 18, 0, 24, 14, 7, 19, 4, 21, 2, 23, 13}; // 替代表
printf("请输入明文:");
scanf("%s", plaintext);
// 加密
int len = strlen(plaintext);
for (int i = 0; i < len; i++)
{
if (plaintext[i] >= 'a' && plaintext[i] <= 'z')
{
ciphertext[i] = 'a' + key[plaintext[i] - 'a']; // 明文字符替换为对应的密文字符
}
else
{
ciphertext[i] = plaintext[i]; // 非小写字母保持不变
}
}
ciphertext[len] = '\0'; // 添加结束符
printf("加密后的密文:%s\n", ciphertext);
return 0;
}
```
程序中使用了一个长度为26的数组作为替代表,每个元素表示对应的小写字母在密文中的替代字符。输入明文后,程序遍历明文中的每个字符,如果是小写字母,则将其替换为替代表中对应的字符,否则保持不变。最后输出加密后的密文。
阅读全文