资源简介 浙江省 2020 年新高考选考科目原创猜题卷 1信息技术试题一、选择题(本大题共 12 小题,每小题 2 分,共 24 分。 每小题列出的四个备选项中只有一个是符合题目要求的,不选、多选、错选均不得分)1.王老师利用办公室的计算机制作了寓言故事“盲人摸象”的多媒体作品进行教学,下列说法正确的是 ( )A.通过手机播放“盲人摸象”视频是一种信息的表达方式B.“盲人摸象”的故事体现了信息具有真伪性C.信息必须依附于载体,所以有关“盲人摸象”的信息不能脱离记载这个故事的古籍被存储和传播D.存储“盲人摸象”多媒体作品的 U 盘属于信息的载体,作品中相关动画属于信息答案 B 本题考查信息、信息的特征和信息技术,以及信息的表达方式与表达技术。 信息是指数据、信号、消息中所包含的意义,语言、文字、声音、图像等属于信息的载体,因此多媒体作品中的动画属于信息的载体,故 D 错误。 信息必须依附于某种载体,它可以脱离所反映的事物被存储、保存和传播,故 C 错误。 “盲人摸象”的故事告诉我们,看问题不能凭自己主观的片面了解就作出判断,应了解事物的全貌, 因为信息具有真伪性,故 B 正确。 信息表达方式有文字、语言、图形、图像、声音和形体动作,而信息表达技术有书籍报刊、电视广播、网络技术(电子邮件、QQ、微信等)、多媒体技术等,故 A 错误。故选 B。2.下列关于网上信息的浏览与获取的说法正确的是 ( )A.利用搜索引擎可以找到任何想要找的东西B.HTML 协议用于浏览器与 Web 服务器之间的信息传输C.“收藏夹”的作用是保存网页的网址,它本身是一个文件夹D.在 IE 浏览器中,保存网页类型为“网页,全部”,则图片被保存在对应的网页中答案 C 本题考查网上信息的浏览与获取。 用于浏览器与 Web 服务器之间的信息传输的协议是 HTTP,而 HTML 是超文本标记语言。 “收藏夹”的作用是保存网页的网址,在Windows 中放在一个文件夹里。 在 IE 浏览器中,保存网页类型为“网页,全部”,则图片被保存在本地计算机对应的文件夹中。 故选 C。3.小张使用 Word 软件编辑某文档,部分界面如图所示下列说法正确的是 ( )A.在光标所在处按“Delete”键,可以删除“曹娥江与甬江”下方的波浪线B.图中图片的环绕方式一定不是“嵌入型”C.接受所有修订后,图中文字变为“天台山(tiān tāi shān)位于中国浙江省天台县城北”D.可以使用查找替换功能将文档中的所有的“天台山”一次性加粗显示,这采用了人工智能技术答案 B 本题考查 Word 相关的功能。 “曹娥江与甬江”下方的波浪线为“语法与拼写错误”,通过单击右键,选择“忽略”命令可以取消,而按“Delete”键,将删除光标右边的字符。第一行的“天台山”是批注的对象,右边是相应的批注。 “查找替换”是 Word 的功能,不属于人工智能技术。 故选 B。4.用 UltraEdit 软件观察字符串“方程 x1+y2= 10”的内码,部分界面如图所示下列说法正确的是 ( )A.字符“10”的二进制编码为 0100 0000BB.图中有 9 个 ASCII 编码,有 4 个字节的 GB2312 编码C.字符“y”的内码是 79H,则字符“z”的内码是 80HD.小写字母和大写字母内码相差 32D,则“Y”的内码为 47H答案 B 本题考查信息编码的知识。 用 UltraEdit 软件观察字符串的内码,每个 ASCII 码占 1 个字节,用十六进制表示时,是数字开头,每个 GB2312 码占 2 个字节,用十六进制表示时,是字母开头。 观察题图,其中有 9 个 ASCII 编码,2 个GB2312 编码,共 4 个字节。 字符“ y”的内码是 79H,则“ z”的内码为 7AH(“z”的内码比“y”大 1H)。 字符“10”的内码是 3130H,转化为二进制为 0011 0001 0011 0000B。 小写字母和大写字母内码相差 32D,即 20H,因为“ y”的内码为 79H,所以“Y”的内码为 59H。 故选 B。5.使用 GoldWave 软件编辑某音频文件,选择其中一段音频后的部分界面如图所示下列说法正确的是 ( )A.该音频素材是 Wave 格式,量化位数为 16 字节,采样频率为44.1kHzB.若将左声道全部选中,执行“删除”操作后直接保存,则该文件变为单声道文件C.当前状态下执行“删除”操作后,按原参数保存,存储容量减少D.当前状态下进行“剪裁”操作后,按原参数保存,存储容量不变答案 D 本题考查音频信息的加工与处理,要求学生掌握GoldWave 软件的应用以及音频容量的计算等知识。 从题图中可以看出,此音频为立体声双声道,当前选中的是左声道部分数据,此文件的量化位数是 16 位,采样频率为 44100Hz。 因此无论“删除”“剪裁” “静音”,音频的时间均不变,从而存储容量也不变。 故选 D。6.有一段未经压缩的 PAL 制式(每秒显示 25 帧)的视频文件,画????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????1 6面为 320×240 像素 24 位,属性如图所示 将其转换成 WMV格式文件后的存储容量约为 5.58MB,则压缩比约为 ( )A.120 ∶ 1 B.60 ∶ 1 C.30 ∶ 1 D.15 ∶ 1答案 C 本题考查未经压缩的视频文件存储容量的计算。视频文件存储容量 =每帧图片存储容量×帧频×时间,而单张图片存储容量 = 水平像素数×垂直像素数×像素编码位数 / 8(单位:字节)。 声音存储容量=采样频率(Hz) ×量化位数×声道数×时间(s) / 8(单位:字节)。 根据提供的视频文件的属性截图,不知道图片的像素位数和声音的量化位数,因此本题可通过总比特率计算,比特率是指每秒传送的比特(bit)数。 视频容量 = 46785×1000×30 / 8 / 1024 / 1024(MB),压缩比 = 46785×1000×30 / 8 / 1024 / 1024 / 5.58≈30 ∶ 1。 故选 C。7.下列 VB 表达式的值最大的是 ( )A.Int(Sqr(50))B.49 \4 Mod 5C.Val(Mid(" 2019 年 6 月" , 6, 1))D.Len(" 9+8" )答案 A 本题考查 VB 常用的函数和运算的优先级。Sqr(50)相当于 50 ,Int(x)函数是取不超过 x 的最大整数,因此选项 A 的计算结果是 7。 运算符“ \”的优先级高于“Mod”,49 \4 的结果是 12,12 Mod 5 的结果是 2。 Mid( " 2019 年 6月" , 6, 1)是在" 2019 年 6 月"中从 6 位开始取 1 个字符,结果是" 6" ,而 Val(" 6" )的结果是 6。 Len( " 9+8" )是计算字符串" 9+8"的长度,结果是 3。 故选 A。8.如图是求12+12+12的程序框图,图中空白框中应填入 ( )A.A= 1 / (2+A) B.A= 2+1 / AC.A= 1 / (1+2A) D.A= 1+1 / (2A)答案 A 本题考查对算法的理解和对流程图的认识。 变量 A 存储计算的结果,流程图中应用了迭代算法,故选 A。9.下列程序执行后文本框 Text1 显示的内容是 ( )s = "Inter(R) Core(TM) i3-4130 CPU @ 3.40GHz"flag = False:k = 0For i = 1 To Len(s)ch = Mid(s, i, 1)If ch >= "A" And ch <= "Z" or ch >= "0" And ch <="9" ThenIf Not flag Thenk = k + 1flag = TrueEnd IfElseflag = FalseEnd IfNext iText1.Text = Str(k)A.6 B.9 C.10 D.18答案 B 本题考查 VB 的循环结构和分支结构。 For 循环的作用是依次从字符串 s 中读取每个字符(结合 Mid 函数),程序的作用为统计字符串 s 中连续大写字母或数字的字符串个数,If Not flag Then 中条件 Not flag 等价于 flag = False,本题还有一个地方要注意,当取字符为“3.40GHz”中的字符“0”后flag = True,取到“G”时不累加 k 的值。 故选 B。10.有如下 VB 程序段:Function GCD(m As Long, n As Long) As LongDim temp As Long, r As LongIf m < n Then temp = m: m = n: n = tempd = m - nDo While d <> nIf d >= n Thenm = dElsem = nn = dEnd Ifd = m - nLoopGCD = nEnd FunctionPrivate Sub Command1_Click()Text1.Text = Str(GCD(48,36))End Sub程序运行完后,单击 Command1 按钮,文本框 Text1 中显示的是 ( )A.12 B.18 C.36 D.48答案 A 本题考查 VB 的自定义函数及求两个数最大公约数的“更相减损术”算法。 48 和 36 的最大公约数是 12。故选 A。11.有如下 VB 程序段:Dim a(1 To 5) As Integer, i As IntegerDim flag As Boolean,j As Integera(1) =1 : a(2) = 1 : a(3) = 1 : a(4)= 1 : a(5) = 1RandomizeFor i = 1 To 5j = 1: flag = True????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????2 6 Do While j <= i - 1 And flag = Truea(i) = Int(Rnd ? 5 + 1)If a(i) = a(j) Theni = i - 1: flag = FalseEnd Ifj = j + 1LoopNext i运行程序后,数组中的数据值可能是 ( )A.1 4 3 1 5 B.1 1 3 5 4C.1 2 3 5 5 D.1 3 4 5 6答案 A 本题考查 VB 的循环结构和分支结构以及随机函数。 For 循环的作用是控制产生 a( i)的次数,每次 Do 循环j 的值从 1 到 i 1,每次随机产生一个整数 a( i),一方面,a( i)的范围是[1,5],另一方面,每次产生的数与前一个不重复,否则重新产生。 因此,排除选项 B,C,D。 故选 A。12.如果数组 a(下标 1 到 n)满足 a(1)≤a(2)≤…≤a( i 1)≤a(i)≥a(i+1)≥…≥a(n),则称数组 a 是单峰的,并称 a(i)是数组 a 的“峰顶” 下列程序段用于查找数组 a 中的“峰顶”,并返回该“峰顶”值Dim a(1 To 10) As IntegerFunction Search (L As Integer, R As Integer)As IntegerM = (L + R) \2If a(M) < a(M - 1) And a(M) > a(M + 1) Then(1)ElseIf a(M) > a(M - 1) And a(M) > a(M + 1) Then(2)ElseIf a(M) > a(M - 1) And a(M) < a(M + 1) Then(3)End IfEnd FunctionPrivate Sub Command1_Click()Label1.Caption = "“峰顶” 值是:" + Str(Search(1, 10))End Sub上述程序中划线处可选语句为:①Search = Search(M + 1 , R)②Search = Search(L , M 1)③Search = a(M)则(1)(2)(3)处的语句依次是 ( )A.①②③ B.①③② C.③①② D.②③①答案 D 本题考查 VB 的递归算法及对分查找算法。 如果 a(M) > a(M 1) And a(M) > a(M + 1),则此时的 M 即为“峰顶”,因此(2)处填 Search = a(M);当 a(M) < a(M1) And a(M) > a(M + 1)时,说明“峰顶”在左半区,因此 L不变,R=M 1,(1)处应填 Search = Search(L , M 1)。 故选 D。二、非选择题(本大题共 4 小题,其中第 13 小题 4 分,第 14 小题 8 分,第 15 小题 7 分,第 16 小题 7 分,共 26 分)13.小李使用 Excel 软件处理高一年级 620 位学生学考模拟考成绩数据,部分数据如图 a 所示图 a请回答下列问题:(1)区域 O7:O22 的数据是通过在 O7 单元格输入公式,并将其自动填充至 O8:O22 得到的,则单元格 O7 的公式是(提示:COUNTIFS 函数用于统计某个区域满足条件的单元格 个 数 例 如 = COUNTIFS ( C4: C623, M22, K4:K623," > = 70" ,K4:K623," < 80" ) 表示统计数据区域C4:C623 中的值等于单元格 M22 的值,且区域 K4:K623中数值大于或等于 70 并且小于 80 的单元格个数 )(2)小李为了计算物理学科全年段的平均分,他在 D624 单元格输入公式 = AVERAGE(D4:D623),结果 D624 单元格没有计算出物理学科的平均分,而显示 =AVERAGE(D4:D623),分析原因:(3)根据图 a 所示的数据制作的图表如图 b 所示,下列描述正确的是 (多选,填字母)A.该图表的数据区域为 N6:Q6,M23:Q23B.若将 C4 单元格中的值更改为 10,则该图表不会发生变化C.将 A4:K623 区域的数据按“物理”列为关键字进行降序排序,该图表不发生变化D.对技术“全卷”列进行如图 c 所示的筛选操作,筛选后,图表不会发生变化图 b图 c????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????3 6 答案 (1)= COUNTIFS(C$4:C$623,M7,K$4:K$623," >= 70" ,K$4:K$623," <80" )(2)有可能是 D624 单元格格式设置成文本格式(3)BC解析 本题考查 Excel 中的公式,单元格的格式设置,图表的数据区域及排序、筛选对图表的影响。 (1)由于区域 O7:O22 的数据是通过在 O7 单元格输入公式后自动填充得到的,观察题图可知单元格 O22 的公式是 =COUNTIFS(C$4:C$623,M22,K$4:K$623," > = 70" ,K$4:K$623," <80" ),可以推断 O7 的公式是 = COUNTIFS(C$4:C$623,M7,K$4:K$623," > = 70" ,K$4:K$623," <80" )。 (2)如果单元格 D624的格式是“常规”或“数字”,当输入公式 = AVERAGE(D4:D623)时,会自动计算区域 D4:D623 的平均值,但当单元格D624 的格式是“文本”时,Excel 会把公式识别为文本形式。(3)在图表中,先根据图表 x 轴上“全校”,找出区域 M23,再根据图例找出区域 N6:Q6(或 N3:Q3),然后根据图表中数据找出相关区域 N23:Q23,根据数据区域的对称性,得图表的数据区域是 M3:Q3,M23:Q23 或 M6:Q6,M23:Q23,故选项 A错误。 若将 C4 单元格中的值更改为 10,根据公式,将会影响1 班和 10 班的等级人数,但全校各等级的人数不会变化,故选项 B 正确。 对 A4:K623 区域的数据进行排序,A4:K623区域数据将会发生位置变化,而统计全校各等级人数的公式不发生变化,从而图表也不会改变,故选项 C 正确。 对技术“全卷”列进行筛选操作,则筛选后,部分不满足条件的数据所在行将被隐藏,有可能导致图表数据区域所在行被隐藏,这样会导致图表发生变化,故选项 D 错误。14.小 明 制 作 主 题 为 “ 毕 业 季” 的 多 媒 体 作 品, 首 先 使 用Photoshop 软件处理图片,然后使用 Flash 软件制作动画 请回答下列问题:图 a(1)如图 a 所示,当前状态下,下列说法错误或操作方法不可行的有 (多选,填字母:A.修改左下角 100%为200%,“文档:384.0K”不变 / B.可以删除“绿叶右”图层 /C.图层“副标题”添加了滤镜 / D.用“文本”工具修改“文字”图层中的文字颜色 / E.可以将“副标题”的图层样式复制到“背景”图层) (注:全部选对的得 2 分,选对但不全的得 1 分,不选或有选错的得 0 分)(2)在作品制作前进行了相应的分析和规划,其中不属于脚本编写的是 (单选,填字母:A.确定该作品“绿叶”等素材需要从网络中获取 / B.确定该作品使用 Flash 等软件制作 / C.根据主题思想和内容,制订各元素的显现顺序和呈现方式 / D.确定该作品的脚本大纲)(3)如图 b 所示,“文字动画”图层第 1 帧到第 60 帧的动画实现文字“We graduated!”左移到中间逐渐变成“我们毕业啦!”的效果,则该图层第 1 帧到第 60 帧的补间类型是图 b(4)“风车”图层第 1 帧应用了“风车”元件,测试场景时,风车的支杆时隐时现,“风车”元件编辑界面如图 c 所示,要使风车的支杆一直呈现,正确的操作是图 c(5)如图 b 所示,在“控制” 图层第 60 帧添加了动作命令“stop();”,“音乐”图层添加了背景音乐,声音的属性如图 d 所示,测试该场景时能听到声音 秒图 d(6)测试影片时,“片头”场景中最后帧停止播放,并出现“播放”按钮,单击该按钮,影片跳转到“主界面”场景第 1 帧并停止播放, 则 “ 播放” 按钮的动作脚本正确的 有(多选,填字母)A.on(press){Stop();B.on(release){NextFrame();C.on(release){gotoAndStop(1);D.on(press){gotoAndStop("主界面" ,1);E.on(release){Stop("主界面" ,1);(注:全部选对的得 2 分,选对但不全的得 1 分,不选或有选错的得 0 分)答案 (1)CDE (2)B (3)形状补间动画 (4)在“风车”元件的“支杆”图层第 20 帧处执行“插入帧”操作,然后在第 10 帧处执行“清除关键帧”操作(或其他等价操作)(5)6 (6)BD解析 本题考查 Photoshop 和 Flash 的综合应用。 (1)题图a 左下角 100%是缩放的比例(调整后图像大小不变);“绿叶左”图层全锁,不能删除,“绿叶右”图层虽然与“绿叶左”图层进行了链接,但可以删除;图层“副标题”是文本图层,不能添加滤镜;“文字”图层是普通像素图层,不能用“文本”工具修改其中的文字颜色;“背景”图层是背景锁图层,不能添加图层样式,也不能将其他图层的样式复制粘贴到这个背景图层。(2)确定作品使用 Flash 等软件制作属于多媒体作品的创作????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????4 6 需求分析。(3)动画实现文字从一种状态逐渐变成另外一种状态的效果属于形状补间动画。(4)“风车”元件的“支杆”图层第 10 帧是空白关键帧,之后没有帧,要使测试影片时始终显示支杆,可以在“支杆”图层最后帧处插入帧,然后在第 10 帧处执行“清除关键帧”操作,使该帧变成普通帧。 或先将第 10 帧移动到第 20 帧,然后在第 20 帧处执行“清除关键帧”操作。(5)声音的同步属性是“数据流”,对照时间轴,如果播放次数为 1,则听到声音 3.5 秒(35 帧 / 10fps), 由于重复次数为2,所以 2×3.5= 7 秒,但因为该场景到第 60 帧就停止播放,所以测试该场景时能听到声音 6 秒。(6)当前场景在“片头”,下一场景是“主界面”,对按钮可以添加的动作命令为:on(press){gotoAndStop("主界面",1);}或 on(release){gotoAndStop("主界面",1);},动作命令“NextFrame();”的作用是将播放移到下一帧(停止播放),由题意知当前在“片头”的最后一帧,下一帧即为“主界面”的第 1 帧。15.IPV6 的地址长度为 128 bit,采用十六进制表示 格式为 X:X:X:X:X:X:X:X,其中每个 X 表示地址中的 16 bit,以十六进制表示 其中每个 X 的前导 0 是可以省略的例如:2018:0DB8:00BA:0023:0008:080B:202C:417A,去掉前导 0 后变成 2018:DB8:BA:23:8:80B:202C:417A,然后对X 进行左右交替上升排序,最后得到 2018:23:8:BA:DB8:80B:417A:202C 编程实现如下功能:在文本框 Text1 中输入原始 32 位十六进制 IPV6 地址,单击“去前导零并排序”按钮 Command1,去掉 IPV6 的前导 0 后进行左右交替上升排序,并在文本框 Text2 中输出,程序运行界面如图所示(1)要使程序运行时,文本框 Text2 的宽度等于文本框 Text1的宽度,可在 Form Load 事件过程中添加语句 (单选,填字母:A.Width2 = Width1 / B.Text2.Width = Text1.Width / C.Text1.Width = Text2.Width)(2)请在划线①处填入合适的代码(3)程序代码中,②处语句加框部分有错,请改正(4)请将③处语句补充完整Private Sub Command1_Click()Dim ipv6 As String, c As String, a(1 To 8)As StringDim i As Integer, n As Integer, j As Integer, LAs IntegerDim flag As Boolean '前导 0 判断,false 表示前导 0,true 表示非前导 0ipv6 = Text1.TextL = Len(ipv6): n = 1: j = 1i = 1: flag = FalseDo While i < Lc = Mid(ipv6, i, 1)'①填空If c = ":" Thena(n) = Mid(ipv6, j, i - j - 1)j = in = n + 1flag = FalseElseIf c <> "0" Thenflag = TrueElseIf Mid(ipv6, i, 1) = ":" Thenflag = TrueElseIf c = "0" Then '②改错,判断 0 是否需要去除j = j + 1End IfLoopa(n) = Mid(ipv6, j, i - j + 1)'以下开始对数组 a 的元素进行左右交替上升排序start = n: finish = 2For i = 1 To n - 1step_value = (-1) ^ iFor j = '③补充程序If a(j) < a(j + step_value) Thent = a(j): a(j) = a(j + step_value):a(j+ step_value) = tEnd IfNext jstart = start + step_valuet = start: start = finish: finish = tNext i'文本框 Text2 中输出去前导零并重排后的 ipv6 地址,代码略End Sub答案 (1)B (2) i = i + 1(3)ElseIf c = " 0" And flag = False(4)start To finish Step step value解析 (1)将文本框 Text1 的宽度值赋值给文本框 Text2,因此答案为 B。(2)Do 循环语句的作用是依次读取文本框 Text1 中每一个字符,变量 i 控制循环的次数,因此答案为 i = i + 1。(3)当前导零出现时,此零要去掉,而非前导零要保留,判断前导零的标志是 flag = False。(4)此排序是冒泡排序的变形,第一次从最后一个开始从右向左,当前数据与左边进行比较,若当前数据比左边要小,则进行交换,将最小 1 个数据排到第 1 个位置;第二次从左边第二个开始从左向右,当前数据与右边比较,若当前数据比右边要小,则进行交换,将次小 1 个数据排到最后 1 个位置。 内循环用变量 start、finish 分别表示比较开始、结束的值,变量step value 控制循环的方向。以 8 个数据为例,第一遍,从右往左,即从第 8 个到第 2 个,当前数据与前一个比较,即 start = 8,finish = 2,a( j) <a( j 1),因此 step value= 1;第二遍,从左往右,即从第 2 个到第 7 个,当前数据与后一个比较,即 start = 2,finish = 7,a( j) <a( j+1),因此 step value= 1;第三遍,从右往左,即从第 7 个到第 3 个,当前数据与前一个比较,即 start = 7,finish = 3,a( j) <a( j 1),因此 step value= 1;……16.某种字符加密方法描述如下(加密前后的字符都是“A” ~“Z”):·以 m 个字符为一段,将 n 个待加密字符依次分割成若干个字符段,剩余字符(个数小于 m)为独立字符段·字符加密规则:字符个数等于 m 的字符段,先进行字符变????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????5 6 换,再进行位置变换,得到加密字符段 字符个数小于 m 的字符段,只进行字符变换,直接得到加密字符段·依次合并加密字符段,即为最后的加密字符字符变换:将字符后移密钥数组 x(元素个数为 m,值为 0~ 26的整数)位,方法如下: “A”后移 5 位得到“F”, “Z”后移 5位得到“E”位置变换:用位置变换密钥数组 y(元素个数为 m,值为 1~ m的不重复整数),将上述值变换后的 m 个元素进行段内位置变换,方法如下: 加密后数据段第 y( i)个元素 =字符移动后第 i 个元素例如,n= 5,m= 3 的字符“ABCDE”加密过程如下:(1)已知 m= 3,数组 x 与数组 y 中的数据如表所示,则待加密数据段“HELLO”加密后的数据段为 (填字符)x( ) x(2) x(3)5 0 5y( ) y(2) y(3)3 2(2)小明根据上述加密算法,设计了一个对应的解密程序,运行界面如图所示,其 VB 代码如下,请在划线处填入合适的代码(解密与加密使用相同的密钥数据) (注“A”的ASCII 码值为 65)Private Sub Command1_Click()Const n = 100Const m =3Dim i As Integer, j As IntegerDim a (1 To n) As Integer, b (1 To n) AsIntegerDim x (1 To m) As Integer, y (1 To m) AsInteger'读取值变换与位置变换密钥数据,分别保存在数组x 与 y 中,代码略'读取待解密字符,将相应的 ASCII 值保存在数组a 中,代码略'下面进行位置变换:位置变换后数据保存到数组b 中For i = 1 To ①For j = 1 To m②Next jNext iFor i = (n \m) ? m + 1 To nb(i) = a(i)Next i'下面进行字符变换: 字符变换后数据仍保存到数组 b 中j = 1For i = 1 To nb(i) = ③j = j + 1If j > m Then j = 1Next i'输出解密后数据,代码略End Sub答案 (1)OAMQY(2)①n\m②b(( i 1)?m+j) = a(( i 1)?m+y( j))③ASC(" A" )+(b( i) ASC(" A" ) x( j) + 26)Mod 26解析 (1)将“HELLO”字符分成两组:“HEL” “LO”,第 1组“HEL”中的字符分别向后移动 5,10,15 位,变换后变成“MOA”,位置变换后变成“OAM”;第 2 组“LO” (不足 3 个,只进行字符变换,直接得到加密字符段)中的字符分别向后移动 5,10 位,变换后变成“QY”,最后得到加密字符段为“OAMQY”。(2)①n 个字符分成 m 段,共分成 n \m 段(不含字符个数小于 m 的段),②处的内循环每次处理 m 个数据,所以①处的外循环表示共有多少整数段,因此①处的答案为 n \m。②位置变换后的数据存储在数组 b 中: 当 i = 1 时,完成第 1段数据变换,即 b( j) = a(y( j));当 i = 2 时,完成第 2 段数据变换,即 b(m+j) = a(m+y( j));当 i = 3 时,完成第 3 段数据变换,即 b(m?2+j) = a(m?2+y( j));当 i = 4 时,完成第 4段数据变换,即 b(m?3+j) = a(m?3+y( j));……归纳得出第 i 段数据变换为 b(( i 1)?m+j) = a(( i 1)?m+y( j)),所以②处答案为 b(( i 1)?m+j) = a(( i 1)?m+y( j))。③首先将 26 个字母的 ASCII 码值变成索引码 0 ~ 26,加密时是后移 x( j)位,而解密时是前移 x( j)位,所以我们要减去 x( j),当差值为负时,可以再加上 26,除以 26,求余数,得出相应的索引码,然后变成相应字符的 ASCII 码值。 综合两种情况,表达式为:b( i) = ASC( " A" ) +(b( i) ASC( " A" ) x( j) + 26)Mod 26。????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????6 6 展开更多...... 收起↑ 资源预览