维吉尼亚密码算法的C语言实现(大小写转换,错误检测)满足老师的所有要求,无bug

[复制链接]
查看11 | 回复1 | 2021-1-27 07:17:17 | 显示全部楼层 |阅读模式
#include
#defineN100000
#include
#include
intmain(){
charstr[27]="abcdefghijklmnopqrstuvwxyz";
charstr1[27]="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
charplaintext[N],key[N]={0};
charskey[N],cipher[N],choice[N];
inti,j,m,n,k,q,p,l,e;
do{
fflush(stdin);
printf("请选择功能:\n");
printf("(1)通过明文密钥加密成密文\n");
printf("(2)通过密文密钥解密成明文\n");
printf("(3)退出程序\n");
scanf("%s",choice);
switch((choice[0]+choice[1]))
{
case'1':
do{
printf("\n");
printf("请输入明文和密钥,按回车完成输入:\n");
fflush(stdin);
gets(plaintext);
fflush(stdin);
gets(skey);
p=0;
for(j=0;j'Z'&&plaintext[j]'z'||(plaintext[j]'Z'&&skey[j]'z'||skey[j]='a'&&plaintext='A'&&plaintext='a'&&key[e]='A'&&key[e]='a'&&plaintext='A'&&plaintext'Z'&&cipher[j]'z'||(cipher[j]'Z'&&skey[j]'z'||skey[j]='a'&&cipher='A'&&cipher='a'&&key[e]='A'&&key[e]='a'&&cipher='A'&&cipher -->
回复

使用道具 举报

千问 | 2021-1-27 07:17:17 | 显示全部楼层
scanf("%s",choice);
getchar();//for'\n'
后面加一句getchar();
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行