
关于string的用法问题
为使电文保密,往往按一定规律将电文转换成密码,收报人再按约定的规律将其译回原文。例如,可以按以下规律将电文变成密码:将字母A变成字母E,a变成e,即变成其后的第4个字母,...
为使电文保密,往往按一定规律将电文转换成密码,收报人再按约定的规律将其译回原文。例如,可以按以下规律将电文变成密码:将字母A变成字母E,a变成e,即变成其后的第4个字母,W变成A,X变成B,Y变成C,Z变成D。见下图,字母按上述规律转换,非字母字符不变。如〃Wonderful!〃转换为〃Asrhivjyp!〃。输入一行字符,要求输出其相应的密码。
我想知道如何用string编写这个程序,我会根据答案的程度给分。 展开
我想知道如何用string编写这个程序,我会根据答案的程度给分。 展开
2个回答
展开全部
#include<iostream>
#include<string>
using namespace std;
void main()
{
string str;
printf("Input a line:");
cin>>str;
for(string::iterator iter = str.begin(); iter != str.end(); ++iter)
{
if( ((*iter >= 'a' ) && (*iter <= 'z')) ||((*iter >= 'A')&&(*iter <= 'Z')))
{
*iter += 4;
if(((*iter>'z')&&(*iter<='z'+4))|| ((*iter>'Z')&&(*iter<='Z'+4)))
{
*iter -= 26;
}
}
}
cout<<str;
}
C++程序,如上!
#include<string>
using namespace std;
void main()
{
string str;
printf("Input a line:");
cin>>str;
for(string::iterator iter = str.begin(); iter != str.end(); ++iter)
{
if( ((*iter >= 'a' ) && (*iter <= 'z')) ||((*iter >= 'A')&&(*iter <= 'Z')))
{
*iter += 4;
if(((*iter>'z')&&(*iter<='z'+4))|| ((*iter>'Z')&&(*iter<='Z'+4)))
{
*iter -= 26;
}
}
}
cout<<str;
}
C++程序,如上!
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询