#include<iostream>
using namespace std;
void main()
{
cout<<"-------------欢迎使用Vigenere加密----------------------"<<endl;
cout<<"1.使用加密:"<<endl;
cout<<"2.使用解密:"<<endl;
int choice;
cin>>choice;
switch(choice)
{
case 1:
char pre_string[100];
char key_string[20];
int i,j;
cout<<"使用加密,请输入原文:"<<endl;
for(i=0;pre_string[i-1]!='\n';i++)
{
cin>>pre_string[i];
}
cout<<"请输入密钥:"<<endl;
for(j=0;key_string[j-1]!='\n';j++)
{
cin>>key_string[j];
}
char word;
for(i=0,j=0;pre_string[i]!='\0';i++,j++)
{
if(key_string[j]!='\0')
{
if(pre_string[i]+key_string[j]-97>91)
word=pre_string[i]+key_string[j]-97-26;
else word=pre_string[i]+key_string[j]-97;
cout<<word;
}
else
{
j=j-6;
if(pre_string[i]+key_string[j]-97>91)
word=pre_string[i]+key_string[j]-97-26;
else word=pre_string[i]+key_string[j]-97;
cout<<word;
}
}
case 2:;
}
}
读取不对,怎样修改使得输入正确?能进行加密操作
题目:读取用户输入的字符串,vigenere加密,类似于凯撒加密,用户自己输入密钥,加密后输出相应的密文。