c++如果实现功能1或2后,再返回选择1,2,3,只有按3才退出,又怎么实现呢

2025-06-28 19:23:35
推荐回答(2个)
回答1:

加个while就行了。
#include
using namespace std;
int main()
{
char ch;
int i;

bool goon=true;
while (goon)
{

cout<<"请选择:1、明文变密文;2、密文变明文;3、退出。"< cin>>i;
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< }break;
return i;
case 2:
{
cout<<"输入密文,稍后会给出相应明文:"< for(;(ch=getchar()!='\n');)
{
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< }break;
case 3:
goon = false;
cout< break;
}

}

return 0;
}

回答2:

把倒数第四行的break删掉,在倒数第20行和倒数第5行分别加入递归语句。