include #include #include using namespace std;int main(){ string plain,ciper,key; int len; //长度三者一致 void change(string &, vector&);//字符变数字 vector encrypt_compute(vector m,vector k);//加密计算 vector discrypt_compute(vector c,vector k);//解密计算 void re_change( vector&,string &);//数字变字符 int flag; //操作标记 do { cout<<"请选择操作:1、加密 2、解密 3、结束:"; cin>>flag; if(flag==1) { cout<<"请输入明文:"; cin>>plain; cout<<"请输入相同长度的密钥:"; cin>>key; len = plain.size(); vector p,c,k; //存变换的数字 change(plain, p); change(key, k); //字母->数字 c = encrypt_compute(p,k); re_change(c,ciper); //数字->字母 cout<<"密文是:"<>ciper; cout<<"请输入相同长度的密钥:"; cin>>key; len = ciper.size(); vector p,c,k; //存变换的数字 change(ciper, c); change(key, k); //字母->数字 p = discrypt_compute(c,k); plain="";//清空明文原来的值 re_change(p,plain); cout<<"明文是:"<&number) //字母变数字{ for (unsigned int i=0;i encrypt_compute(vector m,vector k) //加密计算{ vector sum; for(unsigned int i=0; i discrypt_compute(vector c,vector k) //解密计算{ vector resum; int temp; for(unsigned int i=0; i& sum,string &c) //数字变字符{ string temp;//用于处理insert函数变量传递 for (unsigned int i=0;i