题型:单选题 题类:常考题 难易度:普通
浙江省高中信息技术 算法及VB语言表达基础同步练习
n = 6
d(1) = 23: d(2) = 31: d(3) = 19: d(4) = 33: d(5) =58: d(6) = 28
k = Abs(d(2) - d(1))
For i = 3 To n
If Abs(d(i) - d(i - 1)) > k Then k = Abs(d(i) - d(i - 1))
Next i
Text1.Text = Str(k)
上述程序段执行后,文本框Text1显示的内容是( )
⑴从左向右将13个数字按顺序排列,最左边的是第1位,最右边的是第13位(即校验位)。将所有偶数位的数据相加,结果乘3,得到p。将除校验位以外所有奇数位的数据相加,得到q。
⑵计算p加q得到的和除以10的余数,再计算该余数以10为模的补数(如3以10位模的补数为7,8以10为模的补数为2)。
⑶若补数与校验位相等,则验证正确,否则验证错误。
小李对上述校验规则进行了加密处理,他将前12位数字分成3个一组。每组上每个数字分别循环向左移1位轮换(如第2位移到第1位,第7位移到第9位),再分别加上所处的位置后除以10 的余数,示例如下:
位置 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
原文 |
9 |
7 |
8 |
7 |
5 |
1 |
0 |
1 |
3 |
7 |
0 |
1 |
3 |
轮换 |
7 |
8 |
9 |
5 |
1 |
7 |
1 |
3 |
0 |
0 |
1 |
7 |
3 |
密文 |
8 |
0 |
2 |
9 |
6 |
3 |
8 |
1 |
9 |
0 |
2 |
9 |
3 |
小李还编写了解密验证程序,代码如下,运行界面如图所示。
Private Sub Command1_Click()
Dim i As Integer, t As Integer, code As String, res As String
Dim p As Integer, q As Integer, x As Integer
Dim a(1 To 13) As Integer
code = Text1.Text
For i = 1 To 12
ch = Mid(code, i, 1)
t = ①
a(i + 1 - ( ② ) * 3) = t
Next i
For i = 1 To 12
If i Mod 2 = 0 Then p = p + a(i) Else q = q + a(i)
Next i
x = ③
If x = Val(Mid(code,13,1)) Then res = "验证正确" Else res = "验证错误"
Label3.Caption = res
End Sub
请回答下列问题:
试题篮