请高手给写一个程序. 读入一行字符(以换行符为标志),对所有的英文字母进行循环后移n(n<26)位的加密操作

来源:百度知道 编辑:UC知道 时间:2024/08/20 18:13:01
读入一行字符(以换行符为标志),对所有的英文字母进行循环后移n(n<26)位的加密操作。

要求用C++编写

//作者:baihacker
//时间:2.12.2006
//摘要:位移加密

#include <iostream>
using namespace std;

void tran(char* data, int offset)
{
int i = 0;
while (data[i])
{
if (data[i]>='a' && data[i]<='z')
{
data[i] = (data[i]-'a'+offset)%26 + 'a';
}
else
if(data[i]>='A' && data[i]<='Z')
{
data[i] = (data[i]-'A'+offset)%26 + 'A';
}
i++;
}
}

void main()
{
char data[255];
cout<<"请输入:";
cin>>data;
tran(data , 1);
cout<<data<<endl;

}