加个while就行了。
#include
using namespace std;
int main()
{
char ch;
int i;
bool goon=true;
while (goon)
{
cout<<"请选择:1、明文变密文;2、密文变明文;3、退出。"<
getchar();//吸收回车符
switch(i)
{
case 1:
{
cout<<"输入明文,稍后会给出相应密文:";
for(;(ch=getchar())!='\n';)
{
if((ch>='A'&&ch<='V')||(ch>='a'&&ch<='v'))
ch=ch+('e'-'a');
else
{
if((ch>='w'&&ch<='z')||(ch>='W'&&ch<='Z'))
ch=ch-('w'-'a');
}
cout<
cout<
return i;
case 2:
{
cout<<"输入密文,稍后会给出相应明文:"<
{
if((ch>='A+4'&&ch<='Z+4')||(ch>='a+4'&&ch<='z+4'))
{
ch=ch-4;
if((ch>'Z+4'&&ch<='Z+8')||ch>'z+4')
ch=ch+22;
}
cout<
cout<
case 3:
goon = false;
cout<
}
}
return 0;
}
把倒数第四行的break删掉,在倒数第20行和倒数第5行分别加入递归语句。