栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 笔试题库

[填空题] 本程序实现文本加密。先给定序列:a1,a2,…,an,它们的取值范围是1~n,而且互不相同。加密算法是:把原文本中第k个字符放到加密后文本的第ak个位置处。若原文本长度大于n,则只对前面n

笔试题库 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

[填空题] 本程序实现文本加密。先给定序列:a1,a2,…,an,它们的取值范围是1~n,而且互不相同。加密算法是:把原文本中第k个字符放到加密后文本的第ak个位置处。若原文本长度大于n,则只对前面n

[填空题] 本程序实现文本加密。先给定序列:a1,a2,…,an,它们的取值范围是1~n,而且互不相同。加密算法是:把原文本中第k个字符放到加密后文本的第ak个位置处。若原文本长度大于n,则只对前面n个字符加密,后面的字符不变;若原文本长度小于n,则在后面补字符“*”使文本长度为n后再加密。

例如:若给定序列a1,a2,…,a7分别为2,5,3,7,6,1,4。

·当文本为“PROGRAM”时,加密后的文本为“APOMRRG”。

·当文本为“PROGRAMMING”时,加密后的文本为“APOMRRGMING”。

·当文本为“THANK”时,加密后的文本为“*TA*HKN”。

下面的过程code实现这一算法。其中参数数组a()中存放给定序列(个数与数组a的元素个数相等)a1,a2,a3,…的值,要加密的文本放在参数变量mystr中。过程执行完毕,加密后的文本仍然放在变量mystr中。请填空。

Option base 1

Private Sub code(a() As Integer, mystr As String)

Dim ch As String, c1 As String

n=UBound(a)-Len(mystr)

If n>0 Then

mystr=mystr & String$(n, "*")

End If

ch=mystr

For k= (14) 正确答案:

(14)1 (15)a(k)

参考解析:

code过程首先求出序列长度和字符串长度之差n,从而确定是否在串mystr之后补充字符“*”;接下来,对每一个字符进行处理,处理的次数就是字符或序列的长度,所以[14]空应填1。循环过程中,从第k个位置取出一个字符,同时应从序列中找出该字符经加密后应存放的位置,所以[15]空应填a(k)。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/580170.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号