当前位置: 首页 > news >正文

合肥公司建站模板做邀请函用哪个网站好呢

合肥公司建站模板,做邀请函用哪个网站好呢,南京网站维护,企业信息化管理系统栅栏密码的原理: 栅栏层数n ①把将要传递的信息中的字母交替排成上下n行。 ②再将下面每一行字母排依次在上面一行的后边,从而形成一段密码。 ③例如:栅栏层数为2 明文:THE LONGEST DAY MUST HAVE AN END 加密: …

 栅栏密码的原理:

栅栏层数n

①把将要传递的信息中的字母交替排成上下n行。

②再将下面每一行字母排依次在上面一行的后边,从而形成一段密码。

③例如:栅栏层数为2

明文:THE LONGEST DAY MUST HAVE AN END

加密:

1、把将要传递的信息中的字母交替排成上下两行。

T E O G S D Y U T A E N N

H L N E T A M S H V A E D

2、 密文:

将下面一行字母排在上面一行的后边。

TEOGSDYUTAENN HLNETAMSHVAED

解密:

先将密文分为两行

T E O G S D Y U T A E N N

H L N E T A M S H V A E D

再按上下上下的顺序组合成一句话 

明文:THE LONGEST DAY MUST HAVE AN END 

代码实现 

根据上面的原理,显然我们可以用二维数组来解决加密解密的问题。 

#include <stdio.h>
#include <string.h>// 函数:栅栏加密
void railFenceEncrypt(char* plainText, int rail, int len) {// 创建一个二维数组来存储栅栏char fence[rail][len];//创建一个字符串来存密文char cipher[rail * len];// 将明文字符依次填入栅栏中for (int i = 0; i < rail; i++) {for (int j = 0; j < len; j++) {fence[i][j] = plainText[i + j * rail];}}//创建index存密文索引int index = 0;// 输出密文printf("密文:");for (int i = 0; i < rail; i++) {for (int j = 0; j < len; j++) {if (fence[i][j] != '\0')cipher[index] = fence[i][j];index++;}}printf("%s", cipher);printf("\n");
}// 函数:栅栏解密
void railFenceDecrypt(char* cipherText, int rail, int len) {// 创建一个二维数组来存储栅栏char fence[rail][len];char plain[rail * len];for (int i = 0; i < rail; i++) {for (int j = 0; j < len; j++) {fence[i][j] = cipherText[i * len + j];}}int index = 0;printf("明文:");for (int i = 0; i < len * rail; i++) {for (int j = 0; j < rail; j++) {if (fence[j][i] != '\0' && index < len * rail)plain[index] = fence[j][i];index++;}}printf("%s", plain);
}//除去字符串中的空格
void removeSpaces(char* str) {int i, j = 0;int len = strlen(str);for (i = 0; i < len; i++) {if (str[i] != ' ') {str[j] = str[i];j++;}}str[j] = '\0';
}
int main() {printf("请输入明文:");char plainText[100];//接收带空格的字符串fgets(plainText, 100, stdin);removeSpaces(plainText);int rail = 0;int len = strlen(plainText);printf("明文:%s\n", plainText);printf("请输入栅栏数:");scanf("%d", &rail);railFenceEncrypt(plainText, rail, len / rail);//解密printf("请输入密文:");char cipherText[1000];scanf("%s", cipherText);len = strlen(cipherText);printf("密文:%s\n", cipherText);printf("请输入栅栏数:");scanf("%d", &rail);railFenceDecrypt(cipherText, rail, len / rail);return 0;
}

http://www.yayakq.cn/news/365222/

相关文章:

  • 怎样做家普网站做同性恋的珠宝网站
  • 南通网站建设外包广东省建设监理协会网站 首页
  • 淘宝网站那个做的自己怎么做电商
  • 网站开发工具与使用平台软件系统设计
  • 强化门户网站建设logo设计免费设计
  • 网站免费推广平台有哪些上海久久玖建筑
  • 网站关键词的写法logo网站设计图片
  • 柳州电商网站建设网站设计做哪些准备
  • 做单页网站的软件wordpress展现备案号
  • 做网站用什么工具好邢台专业网站建设价格
  • 免费建设展示网站好听顺口的装修公司名字
  • 北京网站开发品牌临海市城乡建设规划局网站
  • 安丘市建设局官方网站网站备案 邮寄资料
  • 百度脑图网站建设流程图档案馆建设网站
  • 论坛网站开发的目的和意义建设工程项目报建网站
  • 品牌网站制作选哪家可以做装修效果图的网站
  • 网站建设it开发app的网站
  • 公司建设网站的优势个人怎么注册公司需要多少钱
  • 用flash做的ppt模板下载网站icp备案域名购买
  • 怎么自己做网站免费的做网站需要知道的简单代码
  • 德州网站建设德州长沙招聘信息最新招聘
  • 网站开发前端和后端wordpress自动存图
  • 自己如何免费做网站六安网红水坝
  • 网站上的定位功能如何实现的wordpress 修改建站时间
  • 网站标题主关键词常用的网络营销平台有哪些
  • 做外贸比较好用的网站网页升级重要通知请拿好笔记本
  • 短视频网站的动画是怎么做的太原市住房与城乡建设厅网站
  • 上海网站建设q479185700棒自己网站给别人网站做外链
  • 广州网站建设及推广注册公司哪个网站
  • 建站软件大全有哪些官方网站做的比较好