描述 | |
---|---|
知识点 | 字符串 |
运行时间限制 | 10M |
内存限制 | 128 |
输入 | 输入说明 |
输出 | 输出说明 |
样例输入 | abcdefg BCDEFGH |
样例输出 | BCDEFGH abcdefg |
#include <iostream>
#include <vector>
#include <stdlib.h>
#include <stack>
using namespace std;
#define N 100
/* 对字符串进行加密 */
void Encrypt (char aucPassword[], char aucResult[])
{
if(aucPassword == NULL)
{
return;
}
int lenth = 0, i = 0;
/* 得到字符串的长度 */
lenth = strlen(aucPassword);
for(i = 0; i < lenth; i++)
{
if(aucPassword[i] == 'Z')
{
aucResult[i] = 'a';
}
else if(aucPassword[i] == 'z')
{
aucResult[i] = 'A';
}
else if(aucPassword[i] == '9')
{
aucResult[i] = '0';
}
else if(aucPassword[i] >= 'A' && aucPassword[i] < 'Z')
{
aucResult[i] = (aucPassword[i] + 1 - 'A') + 'a';
}
else if(aucPassword[i] >= 'a' && aucPassword[i] < 'z')
{
aucResult[i] = (aucPassword[i] + 1 - 'a' ) + 'A';
}
else if(aucPassword[i] >= '0' && aucPassword[i] < '9')
{
aucResult[i] = aucPassword[i]+1;
}
else
{
aucResult[i] = aucPassword[i];
}
}
aucResult[i] = '\0';
cout << aucResult << endl;
}
int unEncrypt (char result[], char password[])
{
if(password == NULL)
{
return -1;
}
int lenth = 0, i = 0;
/* 得到字符串的长度 */
lenth = strlen(password);
for(i = 0; i < lenth; i++)
{
if(password[i] == 'A')
{
result[i] = 'z';
}
else if(password[i] == 'a')
{
result[i] = 'Z';
}
else if(password[i] == '0')
{
result[i] = '9';
}
else if(password[i] > 'A' && password[i] <= 'Z')
{
result[i] = (password[i] - 1 - 'A') + 'a';
}
else if(password[i] > 'a' && password[i] <= 'z')
{
result[i] = (password[i] - 1 - 'a' ) + 'A';
}
else if(password[i] >= '0' && password[i] < '9')
{
result[i] = password[i]-1;
}
else
{
result[i] = password[i];
}
}
result[i] = '\0';
cout << result << endl;
return 0;
}
int main()
{
char passwd[N] = {0};
char retPasswd[N] = {0};
char unPasswd[N] = {0};
char retunPasswd[N] = {0};
gets(passwd);
Encrypt(passwd,retPasswd);
gets(unPasswd);
unEncrypt(retunPasswd,unPasswd);
return 0;
}