某数据加密方法描述如下:
先将字符转化为二进制的位数据并显示在文本框text2中,数据位数显示在标签Label1中
以16个数据为一段,将k个待加密数据依次分割成若干个数据段,剩余数据(个数小于16)为独立数据段。
数据加密规则:
数据个数等于16的数据段,在段内进行位置变换,得到加密数据段。
数据个数小于16的数据段,直接得到加密数据段。
依次合并加密数据段,即为最后的加密数据。
位置变换的规制,方法如下:

具体界面如下图所示:

(1)已知k=38,则数组元素b(26)对应值是数组a中的______________________。
(2)实现该功能的VB程序如下:

Private Sub Command1_Click()

Dim a(1 To 1000) As Integer, b(1 To 1000) As Integer

Dim n As Integer, m As Integer

Dim s As String, s1 As String, c As Integer, ch As String

s = Text1.Text: Text2.Text = ""

n = Len(s)

k = 1

For i = 1 To n '获取字符的二进制数据存放在数组a()中

  n = Asc(Mid(s, i, 1))

  Do While n <> 0

   a(k) = n Mod 2

   n = n \ 2

   Text2.Text = Text2.Text + Str(a(k))

   k = k + 1

  Loop

Next i

       

List1.Clear

 

For m = 1 To (k - 1) \ 16    '对字符二进制按规则进行位变换,变换后的数据存放在数组b()中并输出

  For i = 1 To 4

    b(16 * (m - 1) + 4 * (i - 1) + 1) = a((m - 1) * 16 + i)

    

  Next i

  For i = 1 To 3

    b(16 * (m - 1) + 4 * (i - 1) + 3) = a((m - 1) * 16 + 10 + i)

    b(16 * (m - 1) + 4 * (i - 1) + 2) = a((m - 1) * 16 + 17 - i)

  Next i

  For i = 1 To 2

    b(16 * (m - 1) + 13 + i) = a((m - 1) * 16 + 4 + i)

  Next i

 

 For i = 1 To 4

  s1 = ""

  For j = 1 To 4

  s1 = s1 + Str(b(16 * (m - 1) + (i - 1) * 4 + j))

  Next j

  List1.AddItem s1

  Next i

List1.AddItem ""

Next m

 

s1 = ""

For i = ((k - 1) \ 16) * 16 + 1 To k - 1

   b(i) = a(i)

    If  Then

    s1 = s1 + Str(a(i))

    List1.AddItem s1

    s1 = ""

    Else

    s1 = s1 + Str(a(i))

    End If

Next i

List1.AddItem s1

 

Text3.Text = ""

For i = 1 To k - 1

Text3.Text = Text3.Text + Str(b(i))

Next i

End Sub

实现上述功能,请在划线处填入适当的代码:
程序中①处填入的是________________________________________。
程序中②处填入的是________________________________________。
程序中③处填入的是________________________________________。
当前题号:1 | 题型:填空题 | 难度:0.99
数组nam()、sex()、math()、su()分别存放学生的姓名、性别、数学和总分成绩,现要求编写一个程序使得数据按照男生“总分”的降序和女生“总分”的升序排列,其中男生在前女生在后,程序界面如下图所示:

实现该功能的VB程序如下,但加框处代码有错,请改正。

Dim nam(100) As String '存放学生姓名

Dim sex(100) As String '存放学生性别

Dim math(100) As Long '存放学生数学成绩

Dim su(100) As Long '存放学生总分成绩

Dim k As Integer 'k变量用来存学生人数

Private Sub Form_Load()

‘将数据库中的数据分别存储在相应的变量中并在列表框中显示出来

‘代码略

End Sub

Private Sub Command1_Click()

Dim mmax As Integer, gmax As Integer, flagm As Boolean, flagg As Boolean

i = 1: flagm = True: flagg = True

Do While i <= k And flagm = True ①   

    mmax = 0: gmax = 0

    flagm = False: flagg = False

  For j = i To k - i + 1

    If sex(j) = "男" And su(j) > su(mmax) Then mmax = j

    If sex(j) = "女" And su(j) > su(gmax) Then gmax = j

  Next j

   If mmax <> 0 Then

flagm = True

t = nam(mmax): nam(mmax) = nam(i): nam(i) = t

t = sex(mmax): sex(mmax) = sex(i): sex(i) = t

t = math(mmax): math(mmax) = math(i): math(i) = t

t = su(mmax): su(mmax) = su(i): su(i) = t

   End If

   If gmax <> 0 Then

flagg = True

If j = mmax Then    ②   

gmax = mmax

t = nam(gmax): nam(gmax) = nam(k - i + 1): nam(k - i + 1) = t

t = sex(gmax): sex(gmax) = sex(k - i + 1): sex(k - i + 1) = t

t = math(gmax): math(gmax) = math(i): math(i) = t

t = su(gmax): su(gmax) = su(k - i + 1): su(k - i + 1) = t

Else

t = nam(gmax): nam(gmax) = nam(k - i + 1): nam(k - i + 1) = t

t = sex(gmax): sex(gmax) = sex(k - i + 1): sex(k - i + 1) = t

t = math(gmax): math(gmax) = math(k - i + 1): math(k - i + 1) = t

t = su(gmax): su(gmax) = su(k - i + 1): su(k - i + 1) = t

End If

   End If

i = i + 1

Loop

For i = 1 To k

List2.AddItem nam(i) + "    " + sex(i) + "    " + Str(math(i)) + "    " + Str(su(i))

Next i

End Sub

程序中①处改为________________________________________。
程序中②处改为________________________________________。
当前题号:2 | 题型:填空题 | 难度:0.99
在text1文本框内输入字符串,单击去重按钮,将字符串后面相同的字符删除,并在text2中输出经过删除的字符串。程序界面如图所示。请在下面划线处填入合适的代码。

Private Sub Command1_Click()
Dim s As String, s1 As String, c As String
s = Text1.Text
For i = 1 To Len(s)
c = Mid(s, i, 1)
s1 = 1  
For  j =  2       
If c <> Mid(s, j, 1) Then
s1 = s1 + Mid(s, j, 1)
End If
Next j
3
Next i
Text2.Text = s
End Sub
A.(1)s1 = Mid(s, 1, 1)    (2)i + 1 To Len(s)   (3)s1 = s
B.(1)s1 = Mid(s, 1, 1)   (2)i To Len(s)    (3)s1 = s
C.(1)s1 = Mid(s, 1, i) (2)i To Len(s) (3)s = s1
D.(1)s1 = Mid(s, 1, i) (2)i + 1 To Len(s)  (3)s = s1
当前题号:3 | 题型:选择题 | 难度:0.99
简易加法器:小王用VB编写了一个简易加法器,其功能如下:在文本框Text1中输入数字,中间用“,”隔开,单击“计算”命令按钮后,将这几个数字的和输出在标签Label1中。运行界面如图所示,VB程序代码如下,请回答以下问题。

(1)Cmd1对象属于________类。(单选,填字母:
A.Label /B.TextBox /C.CommandButton)。
(2)请在划线处填入合适代码。
Private Sub Cmd1_Click()
Dim i As Integer, j As Integer, ans As Integer
Dim chAs String, s As String
s = Text1.Text
ans = 0
j = 1
For i = 1 To Len(s)
_______________
If ch = "," Then
ans = ____________
j = i + 1
End If
Next i
Label1.Caption = "计算结果是:" +Str(ans)
End Sub
(3)运行该程序,在文本框中输入“21,5,3”(不包含双引号),则计算结果是_______。
当前题号:4 | 题型:填空题 | 难度:0.99
对称字符串的特征是从左到右读和从右往左读是完全一样的。如“abba”是对称的,”abcba”也是对称的。判断字符串是否对称的VB程序段如下:
n = Len(s)  's是判断的字符串

  k = 0: j = n

  For i = 1 To n \ 2

  Next i

  If k = 0 Then Label1.Caption = "对称" Else Label1.Caption = "不对称"

方框中的代码由以下三部分组成:
①j = j - 1
②If c1< >c2 Then k = k + 1
③c1 = Mid(s,i,1) : c2 = Mid(s,j,1)
代码顺序正确的是(    )
A.①③②B.②③①
C.②①③D.③②①
当前题号:5 | 题型:选择题 | 难度:0.99
下列程序的功能是:当用户点击窗体下方的“石头”(command1)、“剪子”(command2)、“布”(command3)任意一个按钮的时候,电脑也会在Label1上随机显示出一个石头、剪刀、布(显示在label1上),程序判断出胜负(平局算负)将结果显示到label3上。

Private Sub Command1_Click()
Label1.Caption = sj ‘计算机随机产生一个值
Label2.Caption = Command1.Caption
If cp(Label1.Caption, Label2.Caption) Then ‘判断胜负
     = "乙方负"
Else
Label3.Caption = "乙方胜"
End If
End Sub
Function sj() As String '随机生成石头、剪刀、布
i =   ‘随机生成1~3任一整数
If i = 1 Then sj = "石头"
If i = 2 Then sj = "剪刀"
If i = 3 Then sj = "布"
End Function
____________②_________________
当前题号:6 | 题型:填空题 | 难度:0.99
某VB程序段代码如下:
Private Sub Command1_Click()
Dim data(1 To 100) As Integer
For i = 1 To 100
data(i) = Int(Rnd * 1000)
Next
num = Val(Text1.Text)
For i = 1 To 100
If data(i) = num Then Exit For
Next
If i <= 100 Then
MsgBox "找到该数,是第" & i & "个数"
Else
MsgBox "该数不在数组中"
End If
End Sub
方框中的程序算法是:
A.二分查找B.冒泡排序C.递归算法D.顺序查找
当前题号:7 | 题型:选择题 | 难度:0.99
有一组数,依次为3、2、8、5、9,若采用选择排序算法对其进行从大到小排序,其中排序方向为从前向后,则第二趟的排序结果是:
A.9  2  8  5  3B.9  5  8  2  3C.9  8  2  5  3D.9  2  8  3  5
当前题号:8 | 题型:选择题 | 难度:0.99
下列程序的功能是对某校2011年3月份技术高考成绩进行排名分析,数组a中保存学生技术考试的成绩,数组b中保存学生的姓名,第i个学生的技术成绩保存在a(i)中,对应的学生姓名保存在b(i)中,最后按技术成绩从高到低进行排序。程序界面如图所示,左边列表框List1中显示的是所有学生到的原始数据,单击"排序"按钮(Command1)后,在右边的列表框List2中显示排序完成后的结果(按成绩从高到低排列)。

(1)虚线内程序段所采用的排序算法名称是
(2)程序加框处代码有错,请改正。
当前题号:9 | 题型:填空题 | 难度:0.99
下列VB程序的功能是:程序运行时,单击按钮Command1随机产生20个范围在1-1000(包括1和100)的整数,并在列表框List1中显示,然后单击按钮Command2,计算随机产生的20个整数中的最大值、最小值和平均值,并分别在Text1、Text2和Text3中显示,程序的运行界面如图所示。请在划线上填入合适的代码:

Const n = 20
Dim a(1 To n) As Integer
Private Sub Command1_Click()
Dim i As Integer
Randomize
For i = 1 To n
a(i) = Int(Rnd * 1000) + 1
List1.AddItem Str(a(i))
Next i
End Sub
Private Sub Command2_Click()
Dim i As Integer, max As Integer
Dim min As Integer, sum As Single
max = a(1): min = a(1)
sum = 0
For i = 2 To n
If ________ Then max = a(i)
If a(i) < min Then min = a(i)
sum = sum + a(i)
Next i
_____________
Text1.Text = Str(max)
Text2.Text = Str(min)
Text3.Text = Str(sum)
End Sub
当前题号:10 | 题型:填空题 | 难度:0.99