- 基础理论
- 数据及数据库技术
- 人工智能
- 算法理论
- 算法实例
- + 面向对象程序设计 VB开发工具
- 程序设计语言
- 循环结构
- 分支结构
- 顺序结构
- 类、对象、属性、方法、事件和事件处理的概念
- VB应用程序的界面设计与调试
- 基本数据类型
- 常量、变量、数组
- 常用的标准函数
- 基本运算及表达式
- 赋值语句
- 选择语句
- 循环语句
- 算法实例的程序实现
- 算法及算法的表示方法
- 多媒体理论
- 基础软件操作
- 算法软件操作
- 多媒体软件操作
- 网络技术应用
"计算计件工资"的 Visual Basic 程序运行界面如图所示,单击"计算"命令按钮 Command1,触发的事件处理过程名是( )


A.Command1_Click | B.Text1_Click | C.Form_Click | D.Label3_Click |
对于 Visual Basic 语句 If b=2 Then s=s*2 Else s=s/2,下列说法正确的是( )
A.b=2 为赋值语句 |
B.s=s*2 和 s=s/2 均为赋值语句 |
C.s=s*2 和 s=s/2 均为关系表达式 |
D.s=s*2 为关系表达式,s=s/2 为赋值语句 |
(加试题)某VB程序功能:输入正整数n,单击命令按钮Command1后,则会衍生出一串有规律的数字,形式为“1 2 3…n-1 n n-1…3 2 1 ”。例如n=6时,显示的数字串为“1 2 3 4 5 6 5 4 3 2 1 ”。
Private Sub Command1_Click()
Dim a As intger, i As intger, s As String
n = Val(Text1.Text)
s = ""
For i = 1 To 2 * n - 1
If i > n Then ① Else ②
Next i
text2.Text = s
End Sub
为实现以上功能,①②处分别填写( )
Private Sub Command1_Click()
Dim a As intger, i As intger, s As String
n = Val(Text1.Text)
s = ""
For i = 1 To 2 * n - 1
If i > n Then ① Else ②
Next i
text2.Text = s
End Sub
为实现以上功能,①②处分别填写( )
A.①s=Str(2*n-i) ②s=Str(i) | B.①s=s+Str(2*n-i) ②s=s+Str(i) |
C.①s=s+Str(2*n-1) ②s=s+Str(2*n) | D.①s= Str(2*n-1) ②s= Str(2*n) |
下列Visual Basic表达式的值等于56的是( )
A.Mid("1234567", 5, 2) | B.Abs(-55) + 1 |
C.Sqr(56) | D.Len("55") + 1 |
在一个文档中,每行包含一个字符串。现使用如下规则对其压缩:压缩时,对于每个字符串求其与前一字符串的公共前缀,然后使用公共前缀的长度和字符串的剩余部分(以空格隔开)表示该字符串,每个空格和字符都会占用一个字节空间。图a所示为该压缩规则示意图。小明为此编写了VB程序,功能如下:运行程序时,在列表框List1中显示原字符串内容,单击“压缩”按钮Command1,在列表框List2中显示压缩后字符串,并在标签Label2中显示压缩后容量。程序运行界面如图b所示。

实现上述功能的 VB 代码如下,但划线处代码有错,请改正。
Dim word(3000) As String, pre(3000) As String
Const n = 2000
Private Sub Form_Load()
'该过程的作用是从数据库读取 n 个单词,按字典顺序存储在数组 word 中,并在 Label1输出单词数量和容量
'代码略
End Sub
Private Sub Command1_Click()
Dim conp As Integer '存储压缩后的容量
Dim f As Boolean,m As Integer,k As Integer 'k 存储公共前缀的长度
conp=0
For i=1 To n
k=0
If i=1 Then f=False Else f=True
k=Len(word(i)) '(1)______________
Do While k<m And f=True
If Mid(word(i),1,k+1)=Mid(word(i-1),1,k+1) Then
k=k-1 '(2)____________
Else
f=False
End If
Loop
pre(i)=CStr(k)+" "+Mid(word(i),k+1,Len(word(i)))
'Cstr()函数能够将数字类型的值转换为字符类型的值,并却掉前导空格。
List2.AddItem pre(i)
conp=conp+Len(word(i)) '(3)______________
Next i
Label2.Caption="压缩后容量为"+Str(conp)+"字节"
End Sub

实现上述功能的 VB 代码如下,但划线处代码有错,请改正。
Dim word(3000) As String, pre(3000) As String
Const n = 2000
Private Sub Form_Load()
'该过程的作用是从数据库读取 n 个单词,按字典顺序存储在数组 word 中,并在 Label1输出单词数量和容量
'代码略
End Sub
Private Sub Command1_Click()
Dim conp As Integer '存储压缩后的容量
Dim f As Boolean,m As Integer,k As Integer 'k 存储公共前缀的长度
conp=0
For i=1 To n
k=0
If i=1 Then f=False Else f=True
k=Len(word(i)) '(1)______________
Do While k<m And f=True
If Mid(word(i),1,k+1)=Mid(word(i-1),1,k+1) Then
k=k-1 '(2)____________
Else
f=False
End If
Loop
pre(i)=CStr(k)+" "+Mid(word(i),k+1,Len(word(i)))
'Cstr()函数能够将数字类型的值转换为字符类型的值,并却掉前导空格。
List2.AddItem pre(i)
conp=conp+Len(word(i)) '(3)______________
Next i
Label2.Caption="压缩后容量为"+Str(conp)+"字节"
End Sub
小刘编写了一个求序列所有子序列和的程序。程序能够输 出所有的子序列的和,同时输出最大的子序列和。如序列中有三个元素 a(1),a(2),a(3),其子序列包括“a(1),a(2)”,“ a(1),a(2),a(3)”,“ a(2),a(3)”。 程序运行界面如图所示。

实现上述功能的VB程序如下(数组每一项的值都为[-100,100]内的随机整数),请将程序代码补充完整。
Private Sub Command1_Click()
Dim a(1 To 10) As Integer
Dim b(10) As Integer
Dim i As Integer, j As Integer
Dim k As Integer, max As Integer
Randomize
max=-32768
List1.Clear
List2.Clear
b(0)= 0
For i=1 To 10
a(i)=___________ '(1)
b(i)=b(i-1)+a(i)
List1.AddItem Str(a(i))
Next i
For I = 1 To 10
For j=i+1 To 10
s="a("+Str(i)+")"+"至"+"a("+Str(j)+")"+"的和为"
k=_______________ '(2)
If k>max Then max=k
List2.AddItem s+Str(k)
Next j
Next i
Label3.Caption="子序列最大和为:"+___________ '(3)
End Sub

实现上述功能的VB程序如下(数组每一项的值都为[-100,100]内的随机整数),请将程序代码补充完整。
Private Sub Command1_Click()
Dim a(1 To 10) As Integer
Dim b(10) As Integer
Dim i As Integer, j As Integer
Dim k As Integer, max As Integer
Randomize
max=-32768
List1.Clear
List2.Clear
b(0)= 0
For i=1 To 10
a(i)=___________ '(1)
b(i)=b(i-1)+a(i)
List1.AddItem Str(a(i))
Next i
For I = 1 To 10
For j=i+1 To 10
s="a("+Str(i)+")"+"至"+"a("+Str(j)+")"+"的和为"
k=_______________ '(2)
If k>max Then max=k
List2.AddItem s+Str(k)
Next j
Next i
Label3.Caption="子序列最大和为:"+___________ '(3)
End Sub
编写“数字序列”程序,实现如下功能:在文本框Text1中输入[100,500]范围内的整数,单击“生成”按钮Command1,在列表框List1中显示9个该序列的数字。数字序列的生成规则为:该项的数字+该数百位上的数字+该数十位上的数字+该数个位上的数字=下一项的数字,例如:365+3+6+5=379。小明编写了VB程序,运行的界面如图所示,程序代码如下:

(1)代码“Private Sub Command1_Click()”中的Command1_Click()是_________。
(单选,填字母:
(2)为实现上述功能,请在划线处填入合适的代码。
Private Sub Command1_Click( )
Dim n As Integer, i As Integer
Dim a As Integer,b As Integer
Dim c As Integer
List1.Clear
n = Val(Text1.Text)
If n >= 100 And n <= 500 Then
For i = 1 To 9
a = n \ 100
b = (n - 100 * a) \ 10
c = n Mod 10
_______________________
Next i
Else
List1.AddItem "输入数值有误"
End If

End Sub
(3)上述代码段中缺少了List1.AddItem Str(i)+"."+Str(n),此句代码应该加在_____(填字母)位置。
(4)若输入的数字为123,则List1中第三行为__________________。

(1)代码“Private Sub Command1_Click()”中的Command1_Click()是_________。
(单选,填字母:
A.对象名 | B.事件 | C.事件处理过程 | D.方法 ) |
Private Sub Command1_Click( )
Dim n As Integer, i As Integer
Dim a As Integer,b As Integer
Dim c As Integer
List1.Clear
n = Val(Text1.Text)
If n >= 100 And n <= 500 Then
For i = 1 To 9

a = n \ 100
b = (n - 100 * a) \ 10
c = n Mod 10
_______________________

Next i

Else
List1.AddItem "输入数值有误"
End If

End Sub
(3)上述代码段中缺少了List1.AddItem Str(i)+"."+Str(n),此句代码应该加在_____(填字母)位置。
(4)若输入的数字为123,则List1中第三行为__________________。
某VB程序段如下:
s=0
For i=2 To 5
For j=i To 5
If j Mod i=0 Then
a(j)=a(j)+1
s=s+a(j)
End If
Next j
Next i
数组a的初值均为0,上面程序段执行后,最终变量s的值为( )
s=0
For i=2 To 5
For j=i To 5
If j Mod i=0 Then
a(j)=a(j)+1
s=s+a(j)
End If
Next j
Next i
数组a的初值均为0,上面程序段执行后,最终变量s的值为( )
A.6 | B.5 | C.4 | D.3 |
某 VB 程序代码如下:
n=Val(Text1.Text)
sum=n
k=4
Do While n\k>0
sum=sum+n\k
n=n\k+n mod k
Loop
Text2.Text=Str(sum)
在文本框 Text1中输入10,执行该程序段后,文本框 Text2中显示的值是( )
n=Val(Text1.Text)
sum=n
k=4
Do While n\k>0
sum=sum+n\k
n=n\k+n mod k
Loop
Text2.Text=Str(sum)
在文本框 Text1中输入10,执行该程序段后,文本框 Text2中显示的值是( )
A.12 | B.13 | C.14 | D.16 |