C++简单字符串加密(替换)

// ------------------------------------
// 功能: C++简单字符串加密(替换)
// 作者: 吴道明
// 时间: 2016.9.13
// ------------------------------------

#include<iostream>
#include<string>
using namespace std;

void Encrypt(string& strProclaime); // 加密算法
void Decode(string& strCiphertext); // 解密算法

int main()
{
    // 加密
    cout<<"输入明文(小写):";
    string str;
    cin>>str;
    Encrypt(str);
    cout<<"加密密文(大写):"<<str<<endl;

    // 解密
    cout<<endl;
    cout<<"输入密文(大写):";
    cin>>str;
    Decode(str);
    cout<<"解密明文(小写):"<<str<<endl;

    system("pause"); 
    return 0;
}

// 加密算法
void Encrypt(string& strProclaime)
{
    for(int i=0;i<strProclaime.length();i++)
    {
        // 处理a-x
        if(strProclaime[i] >='a' && strProclaime[i] <'x') 
            strProclaime[i]+=2;
        else if(strProclaime[i]=='y') // 处理y
            strProclaime[i]='a';
        else if(strProclaime[i]=='z') // 处理z
            strProclaime[i]='b';
        // 转为大写
        strProclaime[i]-=32;
    }
}

// 解密算法
void Decode(string& strCiphertext)
{
    for(int i=0;i<strCiphertext.length();i++)
    {
        // 处理C-Z
        if(strCiphertext[i] >='C' && strCiphertext[i] <='Z') 
            strCiphertext[i]-=2;
        else if(strCiphertext[i]=='A') // 处理A
            strCiphertext[i]='Y';
        else if(strCiphertext[i]=='B') // 处理B
            strCiphertext[i]='Z';
        // 转为小写
        strCiphertext[i]+=32;
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

苦逼的IT男

你的鼓励是我最大的创作动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值