字符串加解密
来源:互联网 发布:matlab高级编程 pdf 编辑:程序博客网 时间:2024/05/01 15:43
题目描述
1、对输入的字符串进行加解密,并输出。
2加密方法为:
当内容是英文字母时则用该英文字母的后一个字母替换,同时字母变换大小写,如字母a时则替换为B;字母Z时则替换为a;
当内容是数字时则把该数字加1,如0替换1,1替换2,9替换0;
其他字符不做变化。
3、解密方法为加密的逆过程。
接口描述:
实现接口,每个接口实现1个基本操作:
void Encrypt (char aucPassword[], char aucResult[]):在该函数中实现字符串加密并输出
说明:
1、字符串以\0结尾。
2、字符串最长100个字符。
int unEncrypt (char result[], char password[]):在该函数中实现字符串解密并输出
说明:
1、字符串以\0结尾。
2、字符串最长100个字符。
完整代码:
/****************************************************************************** Copyright (C), 2001-2011, Huawei Tech. Co., Ltd. ****************************************************************************** File Name : Version : Author : Created : 2012/03/12 Last Modified : Description : Function List : History : 1.Date : 2012/03/12 Author : Modification: Created file******************************************************************************/#include <stdlib.h>#include <string.h>#include <stdio.h>//1、对输入的字符串进行加解密,并输出。////2加密方法为://当内容是英文字母时则用该英文字母的后一个字母替换,同时字母变换大小写,如字母a时则替换为B;字母Z时则替换为a;//当内容是数字时则把该数字加1,如0替换1,1替换2,9替换0;//其他字符不做变化。////3、解密方法为加密的逆过程。int Encrypt (char password[], char result[]){ /* 代码在这里实现 */ while(*password!='\0') { if(*password=='9') { *result++='0'; password++; } else if(*password>='0'&&*password<'9') { *result++=*password+1; password++; } else if(*password=='Z') { *result++='a'; password++; } else if(*password=='z') { *result++='A'; password++; } else if(*password>='A'&&*password<'Z') { *result++=*password+33; password++; } else if(*password>='a'&&*password<'z') { *result++=*password-31; password++; } else *result++=*password++; } *result='\0'; return 0;}int unEncrypt (char result[], char password[]){ /* 代码在这里实现 */ while(*result!='\0') { if(*result>='1'&&*result<='9') { *password++=*result-1; result++; } else if(*result=='0') { *password++='9'; result++; } else if(*result>='b'&&*result<='z') { *password++=*result-33; result++; } else if(*result=='a') { *password++='Z'; result++; } else if(*result>='B'&&*result<='Z') { *password++=*result+31; result++; } else if(*result=='A') { *password++='z'; result++; } else *password++=*result++; } *password='\0'; return 0;}
0 0
- 字符串的加解密
- 字符串加解密
- 字符串加解密
- php字符串加解密
- 字符串加解密
- 字符串加解密
- 字符串加解密
- 字符串加解密
- 字符串加解密
- 字符串加解密
- 字符串加解密
- 字符串加解密
- 字符串加解密
- 字符串加解密
- 字符串加解密 算法
- 字符串加解密
- 字符串加解密
- 字符串加解密
- 硬币找零
- 筷子
- Nginx学习之一——编译nginx
- 潜水员
- Linux字符界面下的鼠标操作
- 字符串加解密
- 金明的预算方案(NOIP)
- java反射:使用asm 获取方法的参数名
- 音乐的播放与停止
- Java 利用ASM读取变量值(Field value)问题研究
- npm镜像使用方法
- 最小交换合并
- 不能打开chm
- Java类编译后Class文件概述(下)