数据结构第四章上机实验
来源:互联网 发布:数据交易是指什么 编辑:程序博客网 时间:2024/05/20 09:06
题目:
一个文本串可用事先给定的字母映射表进行加密。例如,设字母映射表为:
abcdefghijklmnopqrstuvwxyz
ngzqtcobmuhelkpdawxfyivrsj
则字符串“abc”被加密为“ngz”。设计一个程序exp4-4.cpp将输入的文本串进行加密后输出,然后进行解密并输出。
代码:#include <iostream>#include <cstring>#include <stdio.h>using namespace std;#define MaxSize 27char ch1[27]="abcdefghijklmnopqrstuvwxyz";char ch2[27]="ngzqtcobmuhelkpdawxfyivrsj";typedef struct{ char data[MaxSize]; int length;} SqString;void StrAssign(SqString &s,char cstr[]){ int i; for(i=0; cstr[i]!='\0'; i++) s.data[i]=cstr[i]; s.length=i;}bool jiami(SqString &s){ int k=0; for(int i=0; i<s.length; i++) { if(ch1[i]==s.data[k]) { s.data[k]=ch2[i]; k++; i=-1; } } if(k!=s.length) return false; return true;}bool jiemi(SqString &s){ int k=0; for(int i=0; i<s.length; i++) { if(ch2[i]==s.data[k]) { s.data[k]=ch1[i]; k++; i=-1; } } if(k!=s.length) return false; return true;}void DispStr(SqString s){ int i; if(s.length>0) { for(i=0; i<s.length; i++) cout<<s.data[i]; cout<<endl; }}int main(){ SqString s; char a[26]; int i=0; cout<<"输入原文串:"; gets(a); cout<<endl; StrAssign(s,a); cout<<"加密解密如下:"<<endl; cout<<" 原文串:"; puts(a); cout<<" 加密串:"; if(jiami(s)) DispStr(s); else cout<<"无法找到加密码!"<<endl; cout<<" 解密串:"; if(jiemi(s)) DispStr(s); else cout<<"无法找到解密码!"<<endl; return 0;}
0 0
- 数据结构第四章上机实验
- 第四次上机实验
- 第四次上机实验
- 第四次上机实验
- 第四次上机实验
- 第四次上机实验
- 第四次上机实验
- 第四次上机实验
- 第四次上机实验
- 第四次上机实验
- 第四次上机实验
- 第四次上机实验
- 第四次上机实验
- 第四次上机实验
- 第四次上机实验
- //Dijkstra算法大连理工大学数据结构上机第四章
- Floyed算法大连理工大学数据结构上机第四章
- 数据结构第四次上机 第四章之链串
- 剑指Offer--020-顺时针打印矩阵(蛇形打印矩阵)
- Retrofit 2.0 + OkHttp 3.0+JSON网络请求
- SEO分析:都是流量惹的祸
- HotSpot虚拟机对象揭秘之对象的创建过程探究
- Groovy入门(三)——集合类型List
- 数据结构第四章上机实验
- 罪犯转移
- 单片机MQTT实现推送简单使用
- redis服务器模型
- Hive差集运算详解
- android studio使用svn时忽略文件列表
- A1310. 矩形计算(钟沛林) 二维莫队
- Java容器类
- 查看ADB被占的PID