字符的加密和解密

来源:百度知道 编辑:UC知道 时间:2024/06/01 10:04:44
将每个字母C加(或减)一序数K,即用它后的第K个字母代替,变换式公式: c=chr(Asc(c)+k)
例如:设序数k为5,这时 "A"→ "F", "a"→ "f","B"→ "G"…
当加序数后的字母超过"Z"或"z"则 c=Chr(Asc(c)+k -26)
例如:You are good→ Dtz fwj ltti

解密算法:解密为加密的逆过程
将每个字母C减(或加)一序数K,即 c=chr(Asc(c)-k),
例如:序数k为5,这时 "Z"→"U", "z"→"u","Y"→"T"…
当加序数后的字母小于"A"或"a"则 c=Chr(Asc(c)-k +26)
高手进来帮忙做一下嘛!!刚刚学这个,什么都不会!我想多看看例子,所以高手们帮我写一下嘛!!谢谢了!!分不是很多,还麻烦各位了!!

创建3个文本框名称分别为:
txtCode 用于显示加密后的字符串
txtRecode 用于显示解密后的字符串
txtInput 用于输入要加密的字符串
创建3个按钮,名称分别为:
cmdcls 清屏
cmdcode 加密
cmdrecode 解密

Dim strInput$, Code$, Record$, c As String * 1
Dim i%, length%, iAsc%

Private Sub cmdcls_Click() '清屏
txtCode.Text = ""
txtRecode.Text = ""
txtInput.Text = ""
End Sub

Private Sub cmdcode_Click() '加密
Dim strInput$, Code$, Record$, c As String * 1
Dim i%, length%, iAsc%
strInput = txtInput.Text
length = Len(RTrim(strInput)) '去掉字符串右边的空格,求真正的长度
Code = ""
For i = 1 To length
c = Mid$(strInput, i, 1) '取第i个字符
Select Case c
Case "A" To "Z" '大写字母加序数5加密
iAsc = Asc(c) + 5
If iAsc > Asc("Z") Then iAsc = iAsc - 26 '加密后字母超过Z
Code =