4个回答
展开全部
#include<iostream>
using namespace std;
int main(int argc, char *argv[])
{
char p[255];
memset(p, 0, 255);
cout<<"请输入要翻译的字符串:";
cin>>p;
for(int i=0; p[i]!='\0'; i++)
{
if (p[i]>='a' && p[i]<'w' || p[i]>='A' && p[i]<'W')
//a-v和A-V往后退四个字符来替换
p[i]= p[i]+4;
else if(p[i]>='w' && p[i]<='z' || p[i]>='W' && p[i]<='Z')
//WXYZ和wxyz用ABCD和abcd来替换
p[i]= p[i]-22;
//其他的字符或者标点符号不变
}
cout<<"加密后的字符串为:";
cout<<p<<endl;
return 0;
}
这个可以输出你的需要 而且已经做了改进 可以输出 任意ascii码中的字符,数字字符和标点符号都不改变
using namespace std;
int main(int argc, char *argv[])
{
char p[255];
memset(p, 0, 255);
cout<<"请输入要翻译的字符串:";
cin>>p;
for(int i=0; p[i]!='\0'; i++)
{
if (p[i]>='a' && p[i]<'w' || p[i]>='A' && p[i]<'W')
//a-v和A-V往后退四个字符来替换
p[i]= p[i]+4;
else if(p[i]>='w' && p[i]<='z' || p[i]>='W' && p[i]<='Z')
//WXYZ和wxyz用ABCD和abcd来替换
p[i]= p[i]-22;
//其他的字符或者标点符号不变
}
cout<<"加密后的字符串为:";
cout<<p<<endl;
return 0;
}
这个可以输出你的需要 而且已经做了改进 可以输出 任意ascii码中的字符,数字字符和标点符号都不改变
展开全部
我晕 这个简单 你知道 英语字母 对应的ASCII 码吧 把字符都 +4 处理 ,就可以了 ,一步解决
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2012-10-11
展开全部
#include <iostream>
using namespace std;
int main()
{char c1='O',c2='l',c3='y',c4='m',c5='p',c6='i',c7='c';
c1+=4;
c2+=4;
c3+=4;
c4+=4;
c5+=4;
c6+=4;
c7+=4;
cout<<"翻译成密码:"<<c1<<c2<<c3<<c4<<c5<<c6<<c7<<endl;
return 0;
}
using namespace std;
int main()
{char c1='O',c2='l',c3='y',c4='m',c5='p',c6='i',c7='c';
c1+=4;
c2+=4;
c3+=4;
c4+=4;
c5+=4;
c6+=4;
c7+=4;
cout<<"翻译成密码:"<<c1<<c2<<c3<<c4<<c5<<c6<<c7<<endl;
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
char s[1000];int i;
cout<<"输入原文:";
cin>>s;
cout<<"加密后为:";
for (i=0;s[i]!='\0';i++)
{
if (s[i]>='a' && s[i]<='z')cout<<(char)((s[i]-'a'+4)%26+'a');
else if (s[i]>='A' && s[i]<='Z')cout<<(char)((s[i]-'A'+4)%26+'A');
else cout<<s[i];
}
cout<<"输入原文:";
cin>>s;
cout<<"加密后为:";
for (i=0;s[i]!='\0';i++)
{
if (s[i]>='a' && s[i]<='z')cout<<(char)((s[i]-'a'+4)%26+'a');
else if (s[i]>='A' && s[i]<='Z')cout<<(char)((s[i]-'A'+4)%26+'A');
else cout<<s[i];
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询