- 基础理论
- 数据及数据库技术
- 人工智能
- 算法理论
- 算法实例
- + 面向对象程序设计 VB开发工具
- 程序设计语言
- 循环结构
- 分支结构
- 顺序结构
- 类、对象、属性、方法、事件和事件处理的概念
- VB应用程序的界面设计与调试
- 基本数据类型
- 常量、变量、数组
- 常用的标准函数
- 基本运算及表达式
- 赋值语句
- 选择语句
- 循环语句
- 算法实例的程序实现
- 算法及算法的表示方法
- 多媒体理论
- 基础软件操作
- 算法软件操作
- 多媒体软件操作
- 网络技术应用
求两数之和的算法是:输入两数a和b的值,计算c=a+b,输出c的值。该算法的基本结构属于( )。
A.顺序结构 | B.选择结构 | C.循环结构 | D.框架结构 |
在 VB 中,下列程序段执行后,变量 s 的值是( )。
s=1
For k="1" To 3
s=s+1
Next k
s=1
For k="1" To 3
s=s+1
Next k
A.1 | B.3 | C.4 | D.6 |
有一个报数游戏, n个人排成一圈,游戏开始时规定一个报数号m,然后从其中一个人开始按顺时针报数1,2,3……n,当某人报到的数为m的倍数时,即被淘汰,其他人继续游戏,直到最后。现用VB设计了一个程序,程序界面如下图所示。在文本框Text1中输入参加游戏的人数n,在文本框Text2中输入报数号m,单击“报数”按钮,即在列表框List1中显示每次被淘汰的人的顺序号。

实现上述功能的VB代码如下,但加框处有错,请改正。
Private Sub Command1_Click()
Dim n As Integer, m As Integer
Dim a(1 To 50) As Integer
n = Val(Text1.Text)
m = Val(Text2.Text)
For i =" 1" To n
'(1)
Next i
s =" 0:j" = 0
Do While s < n
t = 0
Do While t < m
'(2)
t =" t" + a(j)
Loop
a(j) = 0
s =" s" + 1
List1.AddItem "第" + Str(s) + "次:" + Str(j)
Loop
End Sub

实现上述功能的VB代码如下,但加框处有错,请改正。
Private Sub Command1_Click()
Dim n As Integer, m As Integer
Dim a(1 To 50) As Integer
n = Val(Text1.Text)
m = Val(Text2.Text)
For i =" 1" To n

Next i
s =" 0:j" = 0
Do While s < n
t = 0
Do While t < m

t =" t" + a(j)
Loop
a(j) = 0
s =" s" + 1
List1.AddItem "第" + Str(s) + "次:" + Str(j)
Loop
End Sub
编写VB程序,实现如下功能:在文本框Text1中输入十进制数,单击“转换”按钮Command1,在列表框List1中输出对应的十六进制数,运行界面如图a所示,程序代码如下。

图a 图b
(1)在设计程序界面时,应使用图b所示的“控件工具箱”中的 ________(填写相应编号)添加列表框。
(2)为实现上述功能,请在划线处填入合适的代码。
Private Sub Command1_Click()
Const code = "0123456789ABCDEF"
Dim s1 As String, s As String, t As String
Dim a As Integer
Dim f As Boolean
Dim x As Long
t = Text1.Text
a = Len(t)
__________
For i = 1 To a
c = Mid(t, i, 1)
If c < "0" Or c > "9" Then f = False
Next i
If f Then
x = Val(t)
s = ""
Do While x > 0
y = x Mod 16
x = x \ 16
s1 = Mid(code, y + 1, 1)
_________
Loop
List1.AddItem "(" & Text1.Text & ")10" & "-->(" & s & ")16"
Else
List1.AddItem "(" & Text1.Text & ")10" & "-->不是十进制数"
End If
End Sub
(3)若在文本框Text1中输入“63”,则单击“转换”按钮后s的值为:________。


图a 图b
(1)在设计程序界面时,应使用图b所示的“控件工具箱”中的 ________(填写相应编号)添加列表框。
(2)为实现上述功能,请在划线处填入合适的代码。
Private Sub Command1_Click()
Const code = "0123456789ABCDEF"
Dim s1 As String, s As String, t As String
Dim a As Integer
Dim f As Boolean
Dim x As Long
t = Text1.Text
a = Len(t)
__________
For i = 1 To a
c = Mid(t, i, 1)
If c < "0" Or c > "9" Then f = False
Next i
If f Then
x = Val(t)
s = ""
Do While x > 0
y = x Mod 16
x = x \ 16
s1 = Mid(code, y + 1, 1)
_________
Loop
List1.AddItem "(" & Text1.Text & ")10" & "-->(" & s & ")16"
Else
List1.AddItem "(" & Text1.Text & ")10" & "-->不是十进制数"
End If
End Sub
(3)若在文本框Text1中输入“63”,则单击“转换”按钮后s的值为:________。
小刘在玩一个数字游戏,给定一个n位正整数(n<=20),根据设定的保留位数,舍去一部分数字,剩下的数字按原次序组成一个最大的新数。例如原数34625803,保留4位,最大数为6803。算法是:先确定最高位的数字,在第1位至最后3位数字前的34625中找到最大的数6,从而确定最高位是6,再确定次高位的数字,从6后面的数开始到最后2位数字前的258中找到最大数8,确定次高位是8,依次找下去得到最大新数。他设计了一个VB程序来进行验证,在文本框Text1中输入一个n位正整数,在文本框Text2中输入保留的位数,点击“确定”按钮,在文本框Text3中输出保留的最大新数。程序运行界面如图所示。

(1)如果输入的原数是3635132,保留4位数字,则输出的新数是 。
(2)实现上述功能的VB代码如下,请在划线处填入合适代码。
Private Sub Command1_Click()
Dim a(1 To 20) As String
Dim ys As String, xs As String 'xs记录最大的新数
Dim k As Integer, h As Integer, n As Integer
Dim i As Integer, j As Integer
Dim F As Boolean
xs = ""
ys = Text1.Text
n = Len(ys)
k = Val(Text2.Text)
F = True
If ys = "" Or n > 20 Or k =" 0" Or k > n Then
Label4.Caption = "输入的原数或保留位数不符,请重输!"
F = False
End If
For i =" 1" To n
①
If a(i) < "0" Or a(i) > "9" Then
Label4.Caption = "输入的原数不是数字,请重输!"
Text1.Text = ""
F = False
End If
Next i
If F =" True" Then
h = 1
For i =" 1" To k
For j =" h" To ②
If a(j) > a(h) Then h = j
Next j
xs =" xs" + a(h)
h =" h" + 1
Next i
Text3.Text = xs
End If
End Sub

(1)如果输入的原数是3635132,保留4位数字,则输出的新数是 。
(2)实现上述功能的VB代码如下,请在划线处填入合适代码。
Private Sub Command1_Click()
Dim a(1 To 20) As String
Dim ys As String, xs As String 'xs记录最大的新数
Dim k As Integer, h As Integer, n As Integer
Dim i As Integer, j As Integer
Dim F As Boolean
xs = ""
ys = Text1.Text
n = Len(ys)
k = Val(Text2.Text)
F = True
If ys = "" Or n > 20 Or k =" 0" Or k > n Then
Label4.Caption = "输入的原数或保留位数不符,请重输!"
F = False
End If
For i =" 1" To n
①
If a(i) < "0" Or a(i) > "9" Then
Label4.Caption = "输入的原数不是数字,请重输!"
Text1.Text = ""
F = False
End If
Next i
If F =" True" Then
h = 1
For i =" 1" To k
For j =" h" To ②
If a(j) > a(h) Then h = j
Next j
xs =" xs" + a(h)
h =" h" + 1
Next i
Text3.Text = xs
End If
End Sub

下列Visual Basic表达式的值等于56的是
A.Mid("1234567",5,3) |
B.Len("55") + 1 |
C.Sqr(56) |
D.Abs(-55) + 1 |