#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<ctype.h>
int main()
{
char key[15] = "deceptive";
int key_num[15];
int i;
for ( i = 0; i < strlen(key); i++)
{
key_num[i] =(int) key[i] - 97;
}
//将密钥转换为数字
char plaintext[100];
printf("请输入明文以加密:");
gets_s (plaintext);
plaintext[strlen(plaintext)]='\0';
char ciphertext[100];
int cipgertext_num[100];
int k;
for (k = 0; k < strlen(plaintext); k++)
{
cipgertext_num[k] =(int) plaintext[k]-97+key_num[k%strlen(key)];
cipgertext_num[k] = cipgertext_num[k] % 26 + 97;
ciphertext[k] = (char) cipgertext_num[k];
}
ciphertext[strlen(plaintext)] = '\0';
for (int g = 0; g < strlen(plaintext); g++)
ciphertext[g] = toupper(ciphertext[g]);
printf("密文为:%s", ciphertext);
///
char cipher[100];
printf("\n请输入密文
维吉尼亚密码
最新推荐文章于 2024-03-15 07:00:00 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)