题库 高中信息

题干

如果两个质数的差为2,则这两个质数称为孪生质数对;编写VB程序,实现如下功能:单击“显示孪生质数对”按钮Command1,在列表框list1中显示100以内的所有孪生质数对(运行效果如图所示)。

实现上述功能的VB代码如下, 但加框处代码有错,请改正。
Dim a(1 To 50) As Integer
Private Sub Command1_Click()
Dim i As Integer
k =" 0:" i = 3
Do While i <= 100
If   prime(i)   Then ‘⑴
k =" k" + 1
a(k) = i
End If
i =" i" + 2
Loop
For i =" 2" To k
If   a(i) =" a(i" +1)+2   Then   ‘⑵
List1.AddItem Str(a(i - 1)) + "和" + Str(a(i))[:学#科#网Z#X#X#K]
End If
Next i
End Sub
Function prime(x As Integer) As Boolean
prime = False
For i =" 2" To Int(Sqr(x))
If  x Mod i =" 0"  Then
prime = True
Exit For
End If
Next i
End Function
上一题 下一题 0.99难度 简答题 更新时间:2017-05-26 05:00:45

答案(点此获取答案解析)

同类题5

某数据加密方法描述如下:
(1)以字节为单位进行加密处理;
(2)将1个字节的8位二进制数分割成前4位与后4位两个二进制数;
(3)分别将上述两个4位二进制数转换为十进制数;
(4)将每个十进制数转换为1个加密字符,对应的“密码表”如下:
值(十进制)
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
加密字符
I
l
i
k
e
C
H
N
P
0
s
t
c
a
r
d
 
小明按照上述方法,设计了一个字符串(仅包含ASCII字符)加密的VB程序,功能如下:单击“加密”按钮Commandl,程序依次将文本框Textl中每个字符的ASCII码值作为1个字节转换为两个加密字符,连接这些加密字符,最后在文本框Text2中输出加密结果。下表显示了字符串中一个字符的加密过程:

程序运行效果如图所示。

实现上述功能的VB程序如下:
(1)请在划线处填入合适代码。
Private Sub Command1_Click()
Dim n As Integer, s As String, i As Integer, ss As String
Dim a As Integer  '存储加密前字符的ASCII码
Dim b1 As Integer, b2 As Integer    '分别存储分割、转换后的两个十进制数
s = Text1.Text
①
For i =" 1" To n
a =" Asc(Mid(s," i, 1))
b1 =" a" \ 16
b2 =" a" Mod 16
ss =" ss" + Code2Char(b1) + Code2Char(b2)
Text2.Text = ss
Next i
End Sub
'十进制值转换为加密字符的函数
Function Code2Char(c As Integer) As String
Dim s As String
s = "IlikeCHNpostcard"
Code2Char = ②
End Function
(2)若将“密码表”中值为“0”对应的加密字符“I”改成“i”,加密后的密文可能无法解密,原因是