作者:天边的云YEAH_988 | 来源:互联网 | 2024-09-27 22:14
首先建立顺序串算法库,然后:
函数实现:
SqString EnCrypt(SqString p)
{
int i=0,j;
SqString q;
while (i{
for (j=0; p.data[i]!=A.data[j]; j++);
if (j>=p.length) //在A串中未找到p.data[i]字母
q.data[i]=p.data[i];
else //在A串中找到p.data[i]字母
q.data[i]=B.data[j];
i++;
}
q.length=p.length;
return q;
}
SqString UnEncrypt(SqString q)
{
int i=0,j;
SqString p;
while (i{
for (j=0; q.data[i]!=B.data[j]; j++);
if (j>=q.length) //在B串中未找到q.data[i]字母
p.data[i]=q.data[i];
else //在B串中找到q.data[i]字母
p.data[i]=A.data[j];
i++;
}
p.length=q.length;
return p;
}
main函数:
#include
#include "sqString.h"
int main()
{
SqString p,q;
StrAssign(A,"abcdefghijklmnopqrstuvwxyz");
StrAssign(B,"ngzqtcobmuhelkpdawxfyivrsj");
char str[MaxSize];
printf("\n");
printf("输入原文串:");
gets(str);
StrAssign(p,str);
printf("加密解密如下:\n");
printf(" 原文串:");
DispStr(p);
q=EnCrypt(p);
printf(" 加密串:");
DispStr(q);
p=UnEncrypt(q);
printf(" 解密串:");
DispStr(p);
printf("\n");
return 0;
}
运行截图:
知识点总结:
串的加密基本操作。
心得体会:
串的建立及应用都是以串的基本操作实现的。