字符串的加密和解密
2016-06-03 20:09
267 查看
加密:
数字加一 1变2 9变0 小写转大写后面一个字母 a变B z变A 大写转小写 A变b Z变a
解密:相反
// 字符串加解密.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
void Encrypt (char aucPassword[], char aucResult[]);//加密
int unEncrypt (char result[], char password[]);//解密
int main(void)
{
char aa[2][101]={0};
char* shuru;
int i=0;
for(i=0;i<2;i++)
gets(aa[i]);
Encrypt(aa[0],aa[1]);
unEncrypt(aa[0],aa[1]);
//for(i=0;i<2;i++)
// printf("%s\n",aa[i]);
//system("pause");
return 0;
}
void Encrypt (char aucPassword[], char aucResult[])//解密
{
char* psd=aucPassword,*relt=aucResult;
int len=0,i;
len=strlen(psd);
for(i=0;i<len;i++)
{
if(psd[i]>='a'&&psd[i]<='y')
{
psd[i]-=32;//转化大写
psd[i]+=1;
}
else
if(psd[i]=='z')
psd[i]='a';//处理小写字母
else
if(psd[i]>='A'&&psd[i]<='Y')//处理大写字母
{
psd[i]+=32;//转化小写
psd[i]+=1;//后面字母
}
else
if(psd[i]=='Z')
psd[i]='a';
else
if(psd[i]>='0'&&psd[i]<='8')
psd[i]+=1;
else
if(psd[i]=='9')
psd[i]='0';
}
printf("%s\n",psd);
}
int unEncrypt (char result[], char password[])//解密
{
char *psd=password;
int len=0,i;
len=strlen(psd);
for(i=0;i<len;i++)
{
if(psd[i]>='b'&&psd[i]<='z')//处理小写
{
psd[i]-=1;
psd[i]-=32;//转化大写
}
else
if(psd[i]=='a')
psd[i]='Z';//处理小写字母
else
if(psd[i]>='B'&&psd[i]<='Z')//处理大写字母
{
psd[i]+=32;//转化小写
psd[i]-=1;//后面字母
}
else
if(psd[i]=='A')
psd[i]='z';
else
if(psd[i]>='1'&&psd[i]<='9')
psd[i]-=1;
else
if(psd[i]=='0')
psd[i]='9';
}
printf("%s\n",psd);
return 0;
}
数字加一 1变2 9变0 小写转大写后面一个字母 a变B z变A 大写转小写 A变b Z变a
解密:相反
// 字符串加解密.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
void Encrypt (char aucPassword[], char aucResult[]);//加密
int unEncrypt (char result[], char password[]);//解密
int main(void)
{
char aa[2][101]={0};
char* shuru;
int i=0;
for(i=0;i<2;i++)
gets(aa[i]);
Encrypt(aa[0],aa[1]);
unEncrypt(aa[0],aa[1]);
//for(i=0;i<2;i++)
// printf("%s\n",aa[i]);
//system("pause");
return 0;
}
void Encrypt (char aucPassword[], char aucResult[])//解密
{
char* psd=aucPassword,*relt=aucResult;
int len=0,i;
len=strlen(psd);
for(i=0;i<len;i++)
{
if(psd[i]>='a'&&psd[i]<='y')
{
psd[i]-=32;//转化大写
psd[i]+=1;
}
else
if(psd[i]=='z')
psd[i]='a';//处理小写字母
else
if(psd[i]>='A'&&psd[i]<='Y')//处理大写字母
{
psd[i]+=32;//转化小写
psd[i]+=1;//后面字母
}
else
if(psd[i]=='Z')
psd[i]='a';
else
if(psd[i]>='0'&&psd[i]<='8')
psd[i]+=1;
else
if(psd[i]=='9')
psd[i]='0';
}
printf("%s\n",psd);
}
int unEncrypt (char result[], char password[])//解密
{
char *psd=password;
int len=0,i;
len=strlen(psd);
for(i=0;i<len;i++)
{
if(psd[i]>='b'&&psd[i]<='z')//处理小写
{
psd[i]-=1;
psd[i]-=32;//转化大写
}
else
if(psd[i]=='a')
psd[i]='Z';//处理小写字母
else
if(psd[i]>='B'&&psd[i]<='Z')//处理大写字母
{
psd[i]+=32;//转化小写
psd[i]-=1;//后面字母
}
else
if(psd[i]=='A')
psd[i]='z';
else
if(psd[i]>='1'&&psd[i]<='9')
psd[i]-=1;
else
if(psd[i]=='0')
psd[i]='9';
}
printf("%s\n",psd);
return 0;
}
相关文章推荐
- 《大大李带你玩转XenServer 7 系列》 一、安装XenServer 7.0
- NGUI--->制作血条UI
- linux之V4L2摄像头应用流程
- 打鼹鼠_SSL1506_DP_水
- html学习笔记-2016-6-3 19:21:04
- 创建VirtualBoxClient COM对象失败与Unable to load VirtualBox engine的解决方法
- 《构建之法》—职业道德
- EventBus3 源码解析(个人理解) 之一
- 韩版iphone 6s去掉拍照声音
- PHP文件包含漏洞总结
- 霍纳法则
- Java解决游戏界面闪屏
- LOJ 1294 - Positive Negative Sign
- Codeforces Round #248 (Div. 1) A. Ryouko's Memory Note 水题
- 第二次作业
- 对立事件
- 多个模块编成一个模块
- 高德地图中缩放级别(zoom)和比例尺(getScalePerPixel)之间的计算关系
- 类图
- java多线程_思维导图总结3