VB上机试题及答案复习进程

VB上机试题及答案复习进程
VB上机试题及答案复习进程

V B上机试题及答案

上机操作练习题

1.某数组有20个元素,其值为随机产生的两位整数。现要求将前10个元素与后10个元素对换。即第1个元素与第20个元素互换,第2个数与第19个元素互换,…,第10个元素与第11个元素互换。在窗体上输出数组原来各元素的值与对换后各元素的值。

Option explicit

Dim a(1 to 20) as integer, I as integer, j as integer, t as integer

Private Sub Form_Load()

Show

Print "原始数组是:"

Randomize

For i = 1 To 20

a(i) = Int(Rnd * 90) + 10

Print a(i);

If i Mod 10 = 0 Then Print

Next i

Print

Print "现在数组是:"

For i = 1 To 10

j = 21 - i

t = a(i): a(i) = a(j): a(j) = t

Next i

For i = 1 To 20

Print a(i);

If i Mod 10 = 0 Then Print

Next i

End Sub

2.从数组中删除一个数。先定义一个一维数组,大小、数组的值自定。从键盘上输入一个数,若这个数在数组当中,就把它删除;若这个数不在数组中,提示“该数不在数组中”

注意:1)如果数组中存在多个与该数相同的元素,每一个都能删除;

2)能实现多次删除

Private Sub Form_Load()

Show

ReDim a(9) As Integer

m = 1

Print "原来数组为:"

For i = 0 To 9

a(i) = InputBox("请输入第" & m & "个数:")

Print a(i);

m = m + 1

Next i

Print

n = InputBox("查找的数是:")

i = 0: flag = False

Do

If a(i) = n Then

j = i: flag = True

For k = j To UBound(a) - 1

a(k) = a(k + 1)

Next k

ReDim Preserve a(UBound(a) - 1)

i = i - 1

End If

i = i + 1

Loop While (i <= UBound(a))

If flag = False Then

MsgBox n & "不在该数组中"

Else

Print "删除" & n & "后的数组是:"

For i = 0 To UBound(a)

Print a(i);

Next i

End If

End Sub

3.数组a中存放着升序排列的数据,使用array赋值,将inputbox输入的新数插入到数组中,插入后数组仍有序。

注意:要求利用动态数组,能够实现多次插入

Private Sub Form_Load()

Show

n = 8: ReDim a(n)

a = Array(5, 15, 23, 52, 68, 88, 90, 99)

n = n + 1: ReDim Preserve a(n)

m = InputBox("请输入要插入的数据:")

For i = 1 To n - 1

If m < a(i) Then Exit For

Next i

For k = n To i + 1 Step -1

a(k) = a(k - 1)

Next k

a(k) = m

For i = 1 To n

Print a(i);

Next i

Print

End Sub

4.6个评委为4位歌手打分,分数介于1-100之间。去掉一个最高分,一个最低分,求出每位选手的最后得分。将4位歌手得分从高到低排列输出,同时输出该选手的编号。

如:歌手3 95分歌手 1 87分歌手 4 80分歌手 2 70分

Option Base 1

Private Type geshou

xuhao As String

fenshu(6) As Integer

score As Integer

pingjun As Integer

End Type

Dim singer(1 To 4) As geshou

Private Sub Command1_Click()

For i = 1 To 4

For j = 1 To 6

singer(i).fenshu(j) = Int(Rnd * 100)

singer(i).xuhao = "歌手" & i

Next

Next

Call paixu

End Sub

Private Sub paixu()

Dim p As geshou

For i = 1 To 4

For j = 1 To 5

For k = j To 6

If singer(i).fenshu(j) > singer(i).fenshu(k) Then

t = singer(i).fenshu(j)

singer(i).fenshu(j) = singer(i).fenshu(k)

singer(i).fenshu(k) = t

End If

Next

Next

Next

For i = 1 To 4

For j = 2 To 5

singer(i).score = singer(i).score + singer(i).fenshu(j)

Next

singer(i).pingjun = singer(i).score / 4

Next

For i = 1 To 3

For j = i To 4

If singer(i).score < singer(j).score Then

p = singer(i): singer(i) = singer(j): singer(j) = p

End If

Next

Next

For i = 1 To 4

Print singer(i).xuhao & "得分:" & singer(i).pingjun

Next

End Sub

Private Sub Form_Load()

End Sub

10个评委给10个选手打分

Private Sub Form_Load()

Show

n = UBound(b)

For i = 1 To 10

For j = 1 To 10

a(i, j) = Val(InputBox("请第" & j & "位评委给第" & i & "位选手打分:"))

Next j

For i = 1 To 10

max = a(i, 1): sum = 0

min = a(i, 1): ave = 0

For j = 1 To 10

If a(i, j) > max Then max = a(i, j)

If a(i, j) < min Then min = a(i, j)

sum = sum + a(i, j)

Next j

ave = (sum - max - min) / (n - 2)

b(i) = ave

Next i

For i = 1 To n - 1

For j = i + 1 To n

If b(i) < b(j) Then

t = b(i): b(i) = b(j): b(j) = t

End If

Next j

Next i

Print "选手的得分由高到低为:"

For i = 1 To 10

Print b(i);

Next i

End Sub

5.编写函数求一元二次方程ax2+bx+c=0的解。

注意:要求考虑方程有两相等实根、两不等实根和两个虚根的情况。Dim a As Single, b As Single, c As Single

Dim s As Single

a = InputBox("请输入a")

b = InputBox("请输入b")

c = InputBox("请输入c")

s = b ^ 2 - 4 * a * c

If s < 0 Then

MsgBox ("方程无解")

ElseIf s = 0 Then

Print -b / 2 * a

Else

Print ((-b) + Sqr(s)) / 2 * a & " " & ((-b) - Sqr(s)) / 2 * a

End Sub

6. 任意输入一组字符,统计出大写字母多少个,小写字母多少个,数字多少个?要求用过程实现。

Call tongji(a, n, m, o)

Print "数字:" & n & Chr(13) & "小写:" & m & Chr(13) & "大写:" & o End Sub

Private Sub tongji(a As String, n As Integer, m As Integer, p As Integer)

For i = 1 To Len(a)

If Asc(Mid(a, i, 1)) > 47 And Asc(Mid(a, i, 1)) < 58 Then

n = n + 1

ElseIf Asc(Mid(a, i, 1)) > 96 And Asc(Mid(a, i, 1)) < 123 Then

m = m + 1

ElseIf Asc(Mid(a, i, 1)) > 64 And Asc(Mid(a, i, 1)) < 91 Then

p = p + 1

End If

Next

End Sub

7.随机产生一个5*5的矩阵,将主对角线和次对角线元素都置为1,并求出矩阵的四周元素之和,显示在列表框中。

Option Base 1

Private Sub Form_Load()

Dim a(5, 5) As Integer

Dim s As Integer

For i = 1 To 5

For j = 1 To 5

If i = j Or i = 6 - j Then

a(i, j) = 1

Else

a(i, j) = Int(Rnd * 1000)

End If

Text1.Text = Text1.Text & " " & a(i, j)

s = s + a(i, j)

Next

Text1.Text = Text1.Text & vbCrLf & vbCrLf

Next

List1.AddItem (s)

End Sub

8.编写一个函数,能将字母按下列规律译成密码:

A<-->Z a<-->z

B<-->Y b<-->y

即第1个字母与第26个字母互换,第i个字母与第(26-i+1)个字母互换。在文本框中任意输入一个字符串,调用该函数将密码显示在

另一个文本框中。

Private Sub Command1_Click()

Dim s1 As String

s1 = Text1.Text

Text2.Text = convert(s1)

End Sub

Private Function convert(s1 As String) As String

For i = 1 To Len(s1)

If Asc(Mid(s1, i, 1)) < 91 And Asc(Mid(s1, i, 1)) > 64 Then

convert = convert & Chr(91 - Asc(Mid(s1, i, 1)) + 64)

ElseIf Asc(Mid(s1, i, 1)) < 123 And Asc(Mid(s1, i, 1)) > 96 Then

convert = convert & Chr(123 - Asc(Mid(s1, i, 1)) + 96)

End If

Next

End Function

9.编写2个函数,分别求两个正整数的最大公约数和最小公倍数,用户任意输入两个数,采用函数嵌套调用,该函数将它们在窗体显示。

Private Sub Form_Load()

Text1 = "": Text2 = ""

End Sub

Private Sub Text1_KeyPress(KeyAscii As Integer)

If KeyAscii = 13 Then Text2.SetFocus

End Sub

Private Sub Text2_KeyPress(KeyAscii As Integer)

Dim m As Integer, n As Integer, r As Integer, t As Integer, x

Cls

If KeyAscii = 13 Then

m = Text1.Text

n = Text2.Text

If m < n Then

t = m: m = n: n = t

End If

r = m Mod n

While r <> 0

m = n: n = r: r = m Mod n

Wend

Print

If m < 0 Or n < 0 Then

x = MsgBox("请输入正数", vbCritical + vbOKCancel)

If x = vbCancel Then

End

Else

Text1 = "": Text2 = ""

Text1.SetFocus

End If

Else

Print Text1.Text & "和" & Text2.Text & "的最大公约数是:"; n

End If

End If

End Sub

10. 编写计算阶乘的Function过程,利用e x的下列公式计算e(直到最后一项小于10-6为止)的近似值。

e x≈1+x/1!+x2/2!+x3/3!+…+x n/n!

Option Explicit

Private Sub Form_Load()

Show

Dim x As Integer, n As Integer, s As Double

x = InputBox("请输入一个数:")

n = 1: s = 1

Do

s = s + x ^ n / (jiecheng(n))

n = n + 1

Loop Until x ^ n / (jiecheng(n)) < 10 ^ (-6)

Print s

End Sub

Public Function jiecheng(n As Integer) As Double

Dim i As Integer, s As Double

s = 1

For i = 1 To n

s = s * i

Next i

jiecheng = s

End Function

11.输入整数N,显示具有N行的杨辉三角形,要求按正三角形的形式在图片框中显示。

Option Explicit

Private Sub Form_Load()

WindowState = 2

Show

Dim a(), n As Integer, i As Integer, j As Integer, g As Integer, e As Integer

n = InputBox("请输入一个数:")

ReDim a(n, n)

e = 80

For i = 1 To n

e = e - 5: g = e

For j = 1 To n

If j > i Then

a(i, j) = 0

Else

If i = j Then

a(i, j) = 1

Else

a(i, j) = a(i - 1, j) + a(i - 1, j - 1)

End If

End If

If a(i, j) = 0 Then

Exit For

Else

Picture1.Print Tab(g); a(i, j);

g = g + 10

End If

Next j

Picture1.Print

Next i

End Sub

Private Sub Picture1_Click()

End Sub

12.编写一个过程,输出以下菱形图形:

A

BBB

CCCCC

DDDDDDD

CCCCC

BBB

A

主程序输入一个奇数(>=3),调用过程在窗体上输入图形。

Private Sub Command1_Click()

Dim n As Integer

n = InputBox("")

If n Mod 2 = 0 Or n <= 3 Then

MsgBox ("错误")

Else

Call draw(n)

End If

End Sub

Sub draw(n As Integer)

For i = 1 To (n + 1) / 2

s = Chr(64 + i)

Print Tab(41 - i + 1); String(2 * (i - 1) + 1, s)

Next

c = 1

For j = (n - 1) / 2 To 1 Step (-1)

c = c + 1

s = Chr(64 + i - c)

Print Tab(41 - i + c + 1); String(2 * (j - 1) + 1, s)

Next

End Sub

13.编写一个将十进制转换为二进制字符串输出的函数。调用函数计算用户输入一个十进制数,在文本框中输出二进制值。

注意:输入数据为负数,应该将符号位输出

如 -13 结果 -1101

Option Base 1

Dim a()

Private Function convert(y) As String

Dim i As Integer

i = 1

ReDim a(i)

x = Abs(y)

Do While x <> 0

ReDim Preserve a(i)

a(i) = x Mod 2

If a(i) = 1 Then

x = (x - 1) / 2

Else

x = x / 2

End If

i = i + 1

Loop

ReDim Preserve a(UBound(a))

If y < 0 Then

For i = 1 To UBound(a)

convert = convert & a(i)

Next

convert = "-" & convert

Else

For i = 1 To UBound(a)

convert = convert & a(i)

Next

End If

End Function

Private Sub Command1_Click()

Dim y As Integer

Text1.Text = ""

y = InputBox("请输入十进制数字")

Text1.Text = convert(y)

End Sub

Private Sub Form_Load()

End Sub

14.输入一个整数N,产生N个随机数(范围1—10*N),然后采用任何2种算法实现由小到大的排序。将排序前后的数据显示出来。

Option Base 1

Private Sub Command1_Click()

Dim a() As Integer, n As Integer

n = InputBox("请输入数列项数")

ReDim a(n)

VB新题库(填空题)

所有填空题 1、VB6.0是运行于______操作系统环境下的一个快速可视化程序开发工具,用它进行程序设计,有两个基本的特点,即______和______。 答案:1:Windows9x/NT#Windows9x/NT#Windows9x\NT#Windows9x\NT#Windows9x#Windows NT#Windows9x#WindowsNT#windows9x/NT#windows9x/NT#windows9x\NT#windows9x\NT#windows9x#windows NT#windows9x#windowsNT 2:事件驱动编程#可视化设计 3:可视化设计#事件驱动编程 等级:1难度:1 知识点:VB知识点/VB简介 2、VB是一种面向______的可视化编程语言,它采用______的编程机制。 答案:1:对象 2:事件驱动 等级:1难度:1 知识点:VB知识点/VB的编程环境 3、在VB集成开发环境中,运行应用程序的方法有两种:______或______。 答案:1:编译运行模式#解释运行模式#编译运行#解释运行 2:解释运行模式#编译运行模式#解释运行#编译运行 等级:1难度:1 知识点:VB知识点/VB简介 4、VB的对象主要分为______和______两大类。 答案:1:窗体#控件 2:控件#窗体 等级:1难度:1 知识点:VB知识点/VB的对象、属性、方法和事件 5、VB中,用来描述一个对象的状态或特征的量称之为对象的______。 答案:1:属性 等级:1难度:1 知识点:VB知识点/VB的对象、属性、方法和事件 6、在VB中,最基本的对象是______。 答案:1:窗体 等级:1难度:1 知识点:VB知识点/VB的对象、属性、方法和事件 7、一个对象响应某个事件后所执行的操作是通过一段程序代码来实现,这段程序代码称______。 答案:1:事件过程 等级:1难度:1

VB期末考试试题及答案

二、选择题 1、菜单控件只包括一个事件,即 C ,当用鼠标单击或键盘选中后按“回车”键时触发该事件,除分隔条以外的所有菜单控件都能识别该事件。 A、GotFocus B、Load C、Click D、KeyDown 2、滚动条控件(如图所示)的Max属性所设置的是 A 。 A、滚动框处于最右位置时,一个滚动条位置的Value属性最大设置值 B、单击滚动条和滚动箭头之间的区域时,滚动条中滚动块的最大移动量 C、单击滚动条的箭头区域时,滚动条中滚动块的最大移动量 D、滚动条控件无该属性 3、SQL 语句 Select * Form student 中的 *表示 B 。 A、所有记录 B、所有字段 C、所有表 D、都不对 4、以下选项中,不属于标签的属性是 C 。 A、Enabled B、Caption C、Default D、Font 5、要求改命令按钮显示的文本,应当在属性窗口中改变的属性是 A 。 A、Caption B、Name C、Text D、Label 6、设置一个单选按钮(OptionButton)所代表选项的选中状态,应当在属性窗口中改变的属性是 D 。 A、Caption B、Name C、Text D、Value

7、允许在菜单项的左边设置打勾标记,下面哪种论述是正确的 D 。 A、在标题项中输入&,然后打勾 B、在索引项中打勾 C、在有效项中打勾 D、在复选项中打勾 8、当执行以下过程时,在窗体上将显示 A 。 Private Sub Command1_Click( ) Print "VB"; Print "Hello! "; Print "VB" End Sub A、 VBHello!VB B、 VB Hello!VB C、 VB D、 VB Hello! VB Hello! VB 9、语句Print "The answer is:";20/4-2的结果为 B 。 A、The answer is 20/4-2 B、The answer is 3 C、The answer is "20/4-2" D、非法语句 10、下列哪个控件是容器控件 B 。 A、Image B、Picture C、ComboBox D、FileListBox 11、若要将窗体从内存中卸载出去,其实现的方法是 D 。 12、以下选项中,不是 Visual Basic控件的是 A 。 A.窗体 B.定时器 C.单选框 D.命令按钮 13、双击窗体中的对象后,Visual Basic将显示的窗口是 A 。 A.代码窗口 B.工具箱 C.项目(工程)窗口 D.属性窗口 14、可决定窗体的左上角是否有控制菜单的属性是 A 。 15、设有如下语句: Strl=InputBox("输人","","练习") 从键盘上输人字符“示例”后,Strl的值是 D 。 A.“输入” B.“” C.“练习” D.“示例” 16、窗体Form1的Name属性是Frm1,它的单击事件过程名是 C 。 A. Form1_Click C. Frm1_Click D. Me_Click 17、窗体的hide属性的含义是 A 。 A.隐藏 B.展现 C.装入 D.卸载 18、若要设置定时器控件的定时时间,需设置的属性是 C 。 A.Enabled B.Value C.Interval D.Text 19、能够改变复选框中背景颜色的属性是 C 。

vb程序设计试题(含答案)

第一套试题 一、选择题(每题2分,共30分) 1.在VB环境中,工程文件的扩展名是( C ) (A).frm (B).bas (C).vbp (D).frx 2.下面4项中不属于面向对象系统三要素的是( A ) (A)变量(B)事件(C)属性(D)方法 3. \、/、Mod、*这4个算述运算符中,优先级别最低的是( C ) (A)\ (B)/ (C)Mod (D)* 4.要使Print方法在Form_Load事件中起作用,要对窗体的( C )属性进行设置(A)BackColor (B)ForeColor (C)AutoRedraw (D)Caption 5.不论何控件,共同具有的属性是( B ) (A)Text (B)Name (C)ForeColor (D)Caption 6.要使Form1窗体的标题栏显示“欢迎使用VB”,以下语句正确的是( D ) (A)Form1.Caption=“欢迎使用VB”(B)Form1.Caption=ˊ欢迎使用VBˊ(C)Form1.Caption=欢迎使用VB (D)Form1.Caption=〞欢迎使用VB〞 7.VB提供了结构化程序设计的3种基本结构,这3种基本结构是( D ) (A)递归结构,选择结构,循环结构(B)选择结构,过程结构,顺序结构 (C)过程结构,输入、输出结构,转向结构(D)选择结构,循环结构,顺序结构 8.给变量赋值a=123+MID(“123456”,3,2),a变量中的值是( D ) (A)“12334”(B)123 (C)12334 (D)157 9.下面If语句统计满足性别为男、职称为副教授以上、年龄小于40岁条件的人数,不正确的语句是( D ) (A)If sex=“男”And age<40 And InStr(duty,“教授”)>0 Then n=n+1 (B)If sex=“男”And age<40 And (duty=“教授”Or duty=“副教授”) Then n=n+1 (C)If sex=“男”And age<40 And Right(duty,2)= “教授” Then n=n+1 (D)If sex=“男”And age<40 And duty=“教授”And duty=“副教授” Then n=n+1 10.若要清除列表框的所有内容,可用来实现的方法是( C )

大学VB考试题库

大学VB考试题库 一、单项选择题 1、与传统的程序设计语言相比,Visual Basic最突出的特点是()。 A、结构化程序设计 B、程序开发环境 C、事件驱动编程机制 D、程序调试技术 2、赋值语句:a=123& MID("123456",3,2)执行后,a变量中的值是()。 A、"12334" B、123 C、12334 D、157 3、保存一个工程至少应保存两个文件,这两个文件分别是(B)。 A、文本文件和工程文件 B、窗体文件和工程文件 C、窗体文件和标准模块文件 D、类模块文件和工程文件 4、以下能在窗体Form1的标题栏中显示"VisualBasic窗体"的语句是(C)。 A、https://www.360docs.net/doc/c112746103.html,="VisualBasic窗体" B、Form1.Title="VisualBasic窗体" C、Form1.Caption="VisualBasic窗体" D、Form1.Text="VisualBasic窗体" 5、为了装入一个VisualBasic应用程序,应当(D) A、只装入窗体文件(.frm) B、只装入工程文件(.vbp) C、分别装入工程文件和标准模块文件(.bas) D、分别装入工程文件、窗体文件和标准模块文件 6、赋给一个数组的数据类型一定要(A)。 A、相同 B、不相同 C、两可 D、都不对 7、下面正确的赋值语句是(C)。 A、x+y=30 B、y=π*r*r C、y=x+30 D、3y=x 8、VisualBasic 6.0集成环境的主窗口中不包括(C)。

A、标题栏 B、菜单栏 C、状态栏 D、工具栏 9、以下叙述中错误的是(C)。 A、Visual Basic 是事件驱动型可视化编程工具 B、Visual Basic应用程序不具有明显的开始和结束语句 C、Visual Basic工具箱中的所有控件都具有宽度(Width)和高度(Height)属性(计时器) D、Visual Basic中控件的某些属性只能在运行时设置 10、要使Print方法在Form_Load事件中起作用,要对窗体的(C)属性进行设置。 A、Backcolor B、ForeColor C、AutoRedraw D、BackStyle 11、若要使命令按钮不可操作,要对(A)属性进行设制。 A、Enabled B、Visible C、BackColor D、Caption 12、以下叙述中错误的是(B)。 A、一个工程中可以包含多个窗体文件 B、在一个窗体文件中用Private定义的通用过程能被其他窗体调用 C、在设计VB程序时,窗体、标准模块、类模块等需要分别保存为不同类型的磁盘文件。 D、一个工程默认的启动对象是Form1 13、Cls方法可以清除窗体或图片框中的(C)内容。 A、在设计阶段使用Picture设置的背景位图 B、在设计阶段放置的控件 C、在运行阶段产生的图形和文字 D、以上均可 14、设x=3,y=5,则以下表达式值为真的是 (C) A、(-3+5>x) And (y>0) B、(x<0) Eqv (y>0) C、(x>y) Or (y>0) D、x>=y And y>10 15、为了防止用户随意将光标置于控件之上,应将进行(D)设置。 A、将控件的TabIndex属性设置为0

VB题库程序填空

程序填空〖第1题〗『程序填空』(1分)(题号:59) '------------------------------------------------------- '【程序填空】 '------------------------------------------------------- ' 功能:输入一个数,若大于0,则显示"+";若小于0, ' 则显示 "-";若等于"0",则显示"零"。 '------------------------------------------------------- Private Sub Command1_Click( ) x = Val Select Case x '**********SPACE********** Case is > 0 = "+" Case Is < 0 '**********SPACE********** = "-" '**********SPACE********** Case is = = "零" End Select End Sub 答案: 1). Case Is > 0 2). = "-" 3). Case 0 或 Case Else 或 Case Is = 0 〖第2题〗『程序填空』(1分)(题号:60) '------------------------------------------------------- '【程序填空】 '------------------------------------------------------- '功能:输入任何一个英文字母x, ' 若x的值为"a","c","d-f" ,则显示x的大写字母; ' 若x的值为"m","o","p-z",则显示x的小写字母; ' 若x的值为其它的值,则显示xa(如输入的X的值是g,则显示ga)。 '------------------------------------------------------- Private Sub Command1_Click() x = '**********SPACE********** 【】 '**********SPACE********** Case 【】 = UCase(x) Case "m", "o", "p" To "z" = LCase(x) Case Else '**********SPACE********** 【】 End Select End Sub 答案: 1). Select Case x 2). "a", "c", "d" To "f" 3). = Trim(x) + "a" 或 = x + "a" 〖第3题〗『程序填空』

VB上机综合测试题(十五套)

VB上机综合测试题(一) 一、如下所示,在窗体上,放置一个文本框text1(文本框中的文字为“改变字形”,居中显示)。三个复选框check1,check2和check3,如图设置属性。要求:当用户单击“加粗”、“斜体”、“下划线”这三个复选框时(即当复选框被选中时)能将文本框的字形变为“粗体、斜体、加下划线”(25分) 二、在窗体上添加一个命令按钮(名称为Cmd1,标题为"输出平均值")。程序运行后,单击命令按钮完成以下工作:①随机产生20个0到1000的整数,将其放入一个一维数组中②求出所有元素的平均值,并显示在窗体上(如下图所示)(35分) 三、请设计如下图所示窗体界面。运行程序时,先向左侧文本框中输入一个不超过10的正整数,然后选择"N的阶乘"或"(N+2)的阶乘"单选钮,即可进行计算,计算结果在右侧文本框中显示。请编写程序完成上述功能。(40分)

答案: 一、 界面设计------10分 Private Sub Check1_Click() = ------5分 End Sub Private Sub Check2_Click() = 分 End Sub Private Sub Check3_Click() = ------5分 End Sub 二、 界面设计------10分 Private Sub Cmd1_Click()------2分Dim a%(19), i%, sum!, aver! ------4分Randomize ------3分 For i = 0 To 19------3分 a(i) = Int(Rnd * 1001) ------3分 sum = sum + a(i) ------3分 Next i ------2分 aver = sum / 20 ------3分 Print aver ------2分 End Sub 三、 界面设计------10分 Dim? n%------2分 Private Sub Form_Load() End Sub

vb课后练习答案习题解答 (5)

第5章数组与记录 5.1 填空题 1.若要定义一个包含10个字符串元素,且下界为1的一维数组s,则数组说明语句为()。 答案:Dim s(1 To 10) As String 2.若要定义一个元素为整型数据的二维数组a,且第一维的下标从0到5,第二维下标从-3到6,则数组说明语句为()。 答案:Dim a(0 To 5,-3 To 6) As Integer 3.如果数组元素的下标值为实数,则VB系统会按()进行处理。 答案:四舍五入原则 4.数组元素个数可以改变的数组称为();数组元素可以存放不同类型数据的数组称为()。 答案:可调数组、可变类型数组 5.数组刷新语句用于()。若被刷新的数组是数值数组,则把所有元素置();若被刷新的数组为字符串数组,则把所有元素置()。 答案:清除指定数组内容、0、空字符串 10.控件数组是由一组类型和()相同的控件组成,共享()。 答案:名字、同一个事件过程 11.控件数组中的每一个控件都有唯一的下标,下标值由()属性指定。 答案:Index 12.建立控件数组有两种方法:()和()。 答案:在设计阶段通过相同Name属性值来建立、在程序代码中使用Load方法 5.2 选择题 1.下列一维数组说明语句错误的是()。 a) Dim b(100) AS Double b) Dim b(-5 To 0) AS Byte c) Dim b(-10 To –20) AS Integer d) Dim b(5 To 5) AS String 答案:c 2.若有数组说明语句为:Dim a(-3 To 8),则数组a包含元素的个数是()。 a) 5 b) 8 c) 11 d) 12 答案:d 3.设有数组说明语句:Dim c(1 To 10),则下面表示数组c的元素选项中()是错误的。 a) c(i-1) b) c(5+0.5) c) c(0) d) c(10) 答案:c 4.下列数组说明语句中正确的是()。 a) Dim a(-1 To 5,8)AS String b) Dim a(n,n)AS Integer c) Dim a(0 To 8,5 To –1)AS Single d) Dim a(10,-10)AS Double

vb题库(选择与填空)

一、单选题(每小题1分,共99 分) 1. 假定Picture1 和Text1 分别为图片框和文本框的名称,下列语句中不正确的是______ 。 A Picture1.Print 25 B Text1.Print 25 C Print 25 D Debug.Print 25 2. 在Visual Basic 中要将一个窗体从内存中释放,应该使用以下语句中的______ 。 A UnLoad B Stop C Close D Hide 3. 如果组合框ComBo1中已有10项数据,应使用语句______将数据"Mydata"插入到第5项。 A ComBo1.Insert "Mydata", 4 B ComBo1.Insert "Mydata", 5 C ComBo1.AddItem "Mydata", 5 D ComBo1.AddItem "Mydata", 4 4. 如果列表框List1中已有10项数据,应使用语句______将数据"Mydata"插入到列表框的第3项。 A List1.Insert "Mydata", 3 B List1.AddItem "Mydata", 2 C List1.AddItem "Mydata" ,3 D List1.Insert "Mydata", 2 5. 语句If x=1 Then y=1,下列说法正确的是____________。 A x=1和y=1为赋值语句 B x=1为赋值语句,y=1为关系表达式 C x=1为关系表达式,y=1为赋值语句 D x=1和y=1均为关系表达式 6. 删除列表框中指定的项目所使用的方法为______ 。 A Move B Clear C Remove D RemoveItem 7. 不论何控件,共同具有的属性是______________。 A ForeColor B Name C Text

VB上机程序调试题_题目及参考答案

第二部分VB上机考试模拟试题 一、程序调试题(改错或填空) (二)程序调试题 [题1] Modify.bas模块中的getanswer过程是用于计算一元二次方程的根,并将结果输出来。 Option Explicit Public Sub getanswer() '该过程是用于计算一元二次方程的根,并将结果输出来。 Dim dalt!, a#, b#, c# a = InputBox("输入系数a") b = InputBox("输入系数b") c = InputBox("输入系数c") dalt = b * b - 4 * a * c If ----1---- dalt >0 then dalt = Sqr(dalt) MsgBox Format((-b + dalt) / 2 / a), "0.00" + Chr(13) + Chr(10) + Format((-b - dalt) / 2 / a, "0.00") Elseif ---2---- dalt =0 then MsgBox Format(-b / 2 / a, "0.00") + Chr(13) + Chr(10) + Format(-b / 2 / a, "0.00") Else dalt= ---3---- Sqr(-dalt) MsgBox Format((-b + dalt) / 2 / a, "0.00") + "+i" + Chr(13) + Chr(10) + Format((-b - dalt) / 2 / a, "0.00") + "-i" End If End Sub [题2] 打印输出一菱形图案。 Public Sub prt() '打印由#组成的菱形图案 ' # ' ### ' ##### ' ####### ' ######### ' ####### ' ##### ' ### Dim start As String '每行起始空格数 Dim count As Integer '每行#个数 For i = 1 To 9 If i <= 5 Then '------1------ start=space(21-i) count = 2 * i - 1 Else start = Space(11 + i) '-------2------ count=19-2*i End If '------3------ form1.print start; For j = 1 To count Form1.Print "#"; Next j '------4------ form1.print Next i [题3] 过程pyramid用以打印一个数字金字塔,请在横线上填入必要的内容(将横线删除掉后填入正确的内容),使其完整。 Option Explicit Public Sub pyramid() '打印数字金字塔 ' 1 ' 222 ' 33333 ' 4444444 ' 555555555 ' 6666666 ' 77777 ' 888 ' 9 Dim i As Integer Dim j As Integer Dim start As String '每行起始空格数 Dim num As Integer '每行数字个数 For i = 1 To 9 If i <= 5 Then start = Space(20 - i) num = 2 * i - 1 Else start= '------1------ Space(10 + i) num= '------2------ 2 * (10-i) - 1 End If Form1.Print start; For j = 1 To num '------3------ form1.print trim(str(i)); Next j '------4------ form1.print Next i End Sub [题4] 改错。 Option Explicit Public Sub prt() '打印由数字组成的如下所示金字塔图案 ' 9 ' 888 ' 77777 ' 6666666 ' 555555555 ' 44444444444 ' 3333333333333 ' 222222222222222 ' 11111111111111111 Dim i As Integer, j As Integer '****** 错误1 ****** For i = 9 To 1 step -1 Form1.Print Space(i); '****** 错误2 ****** For j = 1 To 2 *(10- i) - 1 '****** 错误3 ****** Form1.Print trim(str(i)); Next j

vb6.0练习题及答案

一、选择题 1.在设计应用程序时,可以查看到应用程序工程中的所有部分的窗口是()。 A.窗体设计.代码C.属性D.工程资源管理器窗口>> 答案:d 2.窗体的Load事件的触发时机是()。 A.用户单击窗体时B.窗体被加载时C.窗体显示之后D.窗口被卸载时>> 答案:b 3.与传统的程序设计语言相比,Visual Basuc最突出的特点是()。 A.结构化程序设计B.程序开发环境C.事件驱动编程机制D.程序调试技术 答案:C 4.VB6.0集成开发环境的主窗口不包括()。 A.标题栏B.菜单栏C.状态栏D.工具栏 答案:c 5.如果对象的名称为Mytext,而且对象有一个属性Text,那么在代码中引用该属性的正确格式是()。 A.Text.Mytext B.Mytext.text C.Mytext.(Text)D.Mytext*Text 答案:b 6.下列可以激活属性窗口的操作是()。 A.用鼠标双击窗体的任何部位B.执行“工程”菜单中的“属性窗口”命令C.按Ctrl+F4 D.按F4键 答案:b d 7.假定已在窗体上画了多个控件,并有一个控件是活动的,为了在属性窗口中设置窗体的属性,预先应制造的操作是()。 A.单击窗体上没有控件的地方B.单击任一个控件C.不执行任何操作D.双击窗体的标题栏 答案:a 8.如果在文本框中键入字符时,只显示某个字符,如星号(*),应设置文本框的()属性。 A.Caption B.PasswordChar C.Text D.Char 答案:b 9.如果想让文本框中的内容在运行时不能编辑,需将文本框的()属性设置为True。 A.Locked B.MultiLine C.TabStop D.Visible 答案:a 10.对于定时器(Timer)控件,设计其定时是否开启的属性是()。 A.Index B.Tag C.Enabled D.Left 答案:c 11.要在窗体Form1内显示“myfrm”,使用的语句是()。 A.Form.Caption=“myfrm”B.Form1.Caption=“myfrm”C.Form1.Print=“myfrm”D.Form.Print=“myfrm” 答案:b 12.对象的性质和状态特性称为()。 A.事件B.方法C.属性D.类 答案:c 13.下列正确的赋值语句是()。 A.x+y=20 B.y=x+20 C.3x=y D.s=π*r*r

VB练习题(上机)含答案

第一部分 1 在窗体上添加一个命令按钮(名称为Cmd1,标题为"输出平均值")。程序运行后,单击命令按钮完成以下工作: ①随机产生20个0到1000的整数,将其放入一个一维数组中 ②求出所有元素的平均值,并显示在窗体上(如下图所示) Private Sub Cmd1_Click() Dim a%(19), i%, sum!, aver! Randomize For i = 0 To 19 a(i) = Int(Rnd * 1001) sum = sum + a(i) Next i aver = sum / 20 Print aver End Sub 2 请在名称为Form1的窗体上添加一个名称为Text1的文本框和一个名称为C1、标题为"转换"的命令按钮,如下图所示。在程序运行时,单击"转换"按钮,可以把Text1中的小写字母转换为大写,把大写字母转换为小写,其他字符不变。 Private Sub C1_Click() Dim ch As String, ch1 As String, i% ch = Text1 For i = 1 To Len(ch) If Asc(Mid(ch, i, 1)) >= 65 And Asc(Mid(ch, i, 1)) <= 90 Then ch1 = ch1 + LCase(Mid(ch, i, 1)) Else

ch1 = ch1 + UCase(Mid(ch, i, 1)) End If Next i Text1 = Text1 + vbCrLf Text1 = Text1 + ch1 End Sub 3 在窗体上添加一个命令按钮(名称为MyCmd1,标题为"输出最大值")。程序运行后,单击命令按钮完成以下工作: ①随机产生30个0~1000的整数,将其放入一个一维数组中 ②求出其中的最大值,并显示在窗体上。 Private Sub MyCmd1_Click() Dim a%(29), i%, max% Randomize For i = 0 To 29 a(i) = Int(Rnd * 1001) Next i max = a(0) For i = 1 To 29 If a(i) > max Then max = a(i) Next i Print max End Sub 4 请设计如下图所示窗体界面。程序运行时,在选中一个或两个复选框和一个单选按钮时,单击命令按钮,则对文本框中的文本内容做相应的设置。请编写适当的事件过程,完成上述功能。

VB题库-填空练习题

填空题 第1题表达式 1 and 0的值 ______________________ 答案: False 第2题把"Visual Basic程序设计"添加到列表框 lstBooks____________________________ 答案: lstBooks.AddItem "Visual Basic 程序设计" 第3题 For k=35 to 0 step 3 next k 语句的循环次数是_______________________答案:0 第4题 Val("123.55ab456")的值是多少 _____________________________ 答案:123.55 第5题每隔定时器控件的Interval属性值时间间隔,单位为毫秒,定时器会触发一次 ________________________事件 答案:Timer 第6题表达式(-3) And 8 的值为 _______________________. 答案:True 第7题 Print "x=" & (2=4) 的结果为 ________________________. 答案: x=False 第8题要使同一类型控件组成一个控件数组,必须要求_______________________. 答案: Name 相同或名称相同 第9题循环语句FOR K=1 TO 10 STEP –1控制的循环次数为___________________. 答案: 0 第10题设a=2,b=3,c=4,d=5,则NOT a<=c OR 4*c=b^2 AND b<> a+c 的值为______________. 答案: False 第11题声明定长为10个字符变量Sstr的语句为______________________. 答案: Dim Sstr as String*10 或 Sstr as String*10 第12题在VB中,若要将字符串"12345"转换成数字值应使用的类型转换函数是 ____________. 答案: VAL 或 Cint 第13题在一条Dim语句中可以声明多个变量,如Dim strVar,intVar,sngVar As Integer, 则strVar、intVar与sngVar的数据类型分别是Variant、Variant和_____________________. 答案: Integer 第14题滚动条控件主要支持两个事件,它们是scroll和____________________事件. 答案: change 第15题所有控件都具有的共同属性是 ____________________属性. 答案: name 〖第16题〗Visual Basic为添加到窗体上的第一个图片框picture提供的默认对象名为 ______. 答案: Picture1 〖第17题〗A和B同为正整数或同为负整数的VB 表达式为________________. 答案: A=INT(A)★AND★ B=INT(B)★ AND ★ A*B>0 〖第18题〗变量min@表示_______________类型的变量. 答案:货币数据变量或货币 〖第19题〗表达式 32\7 MOD 3^2 的值是____________________. 答案: 4 〖第20题〗把整型数1赋给一个逻辑型变量,则逻辑变量的值为___________________. 答案: True 〖第21题〗求x与y之积除以z的余数的VB表达式为_________________________. 答案: x*y★Mod★z 〖第22题〗以图片框Pic1的中心位置为圆心,以700为半径在Pic1上画一个圆的方法是 ______ 答案: pic1.Circle (pic1.width/2,pic1.height/2),700 〖第23题〗要使一个按钮设为默认按钮,应把此按钮的_____________属性的值设为True. 答案: Default 〖第24题〗在VB中,若要使一个文本框(Text)中的内容在超过文本框的宽度时能够自动换行显示,应当将这个文本框的______________属性的值设置为True. 答案: MultiLine 〖第25题〗设置计时器控件只能触发 ____________________事件. 答案: timer 〖第26题〗VisualBasic6.0用于开发 ____________________环境下的应用程序. 答案: WINDOWS

vb练习题及答案.doc

vb 练习题及答案 【篇一:vb 习题(含答案)】 lass=txt>1 、vb 程序中,通常不会产生错误提示的是( )。(1 分) a、编译错误 b、逻辑错误 c、运行时错误 d、实时错误 2、在设计阶段,双击窗体上任一空白处,打开的窗口是( )。(1 分) a、工程资源管理器窗口 b、代码窗口 c、工具箱窗口 d、属性窗口 3、下列说法中,正确的说法是( )。(1 分) a、窗体名称和该窗体文件名必须一致 b、窗体名称和该窗体文件名 可以不相同 c、窗体名称和该窗体文件名不能使用汉字 d、窗体名称不能使用汉字、但该窗体文件名能使用汉字 4、visual basic 有完备的help 联机帮助功能,可以通过按下功能 键( )得到帮助。( 1 分) a、f9 b 、f8 c、f1 d 、f5 5、以下( )控件可作为容器使用。( 1 分) a、label b 、picturebox c、textbox d 、image 6、将窗体的boderstyle 属性设置为( )可使窗口不显示标题栏。( 1 分) a、0 b 、1 c、2 d 、5 7、文本框没有( )属性(1 分) a、text b 、name c、caption d 、borderstyle 23、下列( )是不合法的常量。( 1 分) a、100 b 、10e02 c、100.0 d 、10e0.5 24、下列对变量的定义中,定义x 为变体型变量的是( )。(1 分) a、dim x as double b 、dim x c、dim x! d 、x%=23

25、设有如下变量声明:dim testdate as date ,为变量testdate 正确赋值的表达方式是( )。(1 分) a、textdate=#1/1/2002# b 、testdate=#1/1/2002# c、textdate=date(1/1/2002) d 、 testdate=format(m/d/yy,1/1/2002) 26、在立即窗口中运行以下语句,a=beijing :b=shanghai :print a,b 对其输出结果的描述中,正确的是( )。(1 分) a、beijing 和shanghai 中间没有空格 b、beijing 和shanghai 中 间有1 个空格 c、beijing 和shanghai 中间有 6 个空格 d、beijing 和shanghai 前面有7 个空格 27、语句段a=3: b=5:t=a :a=b: b=t 执行后( )。(1 分) a、a 值为3,b 值为3 b 、a 值为3,b 值为5 c、a 值为5,b 值为5 d 、a 值为5,b 值为3 28、下列语句中,正确的是( )。(1 分) a、if x3*y and xy then y=x^3 b 、if x3*y and xy then y=3x c、if x3*y : xy then y=x^3 d 、if x3*y and xy then y=x**3 29、下面程序段dim x%: x=5: if x then y=x+1 else y=x 运行后, y 结果是( )。(1 分) a、5 b 、6 c、1 d 、显示出错信息 30、执行语句 a = inputbox(today, tomorrow, yesterday, 5, 5) , 将显示一个输入对话框,在对话框的输入区中显示的信息是( )。(1 分) a、today b 、tomorrow c、yesterday d 、5 31、窗体上有一个命令按钮command1, 编写如下事件过 程: private sub command1_click() :x = val(inputbox(x=)) : y = inputbox(y=) : print x + y : end sub, 单击命令按钮,先后在两个输 入对话框中输入123 和321 ,窗体显示的内容是( )。(1 分) a、444 b 、123321 c、123+321 d 、出错信息 32、执行语句msgbox aaa, 2, bbb 后,所产生的消息框的标题是 ( )。(1 分) a、aaa b 、bbb

VB考试题及答案

VB程序设计期末考试题 一、选择题 1 下列常量中,是Integer类型常量的是( C )。 A、123& B、-38844 C、123% D、32768 2 下面选项中()是字符连接运算符. A A、& B、And C、% D、Mod 3 下面关于VB的集成开发环境(IDE)的叙述中,不正确的是( B )。 A、IDE是设计、调试、运行VB程序的工具。 B、用户不能随意关闭IDE中的窗口。 C、"窗体设计" 窗口是用来设计应用程序界面(窗体)的。 D、打开 / 关闭各窗口的命令主要在IDE的"视图"菜单中。 4 len(“vb程序设计”)=( C ) 。 A、 5 B、2 C、 6 D、10 5 表达式 15 Mod 4 + 13 \ 5 * 2 的值是 D A、7 B、0 C、2 D、4 6 赋值语句A=123 + Mid$( “123456”,3,2) 执行后,A=(A)。 A、157 B、12334 C、123 D、"12334" 7 在一个语句内写多条语句时,用来分隔每条语句的符号是(C). A、, B、; C、: D、、 8 将逻辑型数据转换成整型数据时,转换规则是( D )。 A、将True转换为 1 ,将False转换为 0 B、将True转换为 1 ,将False转换为 -1 C、将True转换为 0 ,将False转换为 -1 D、将True转换为 -1 ,将False转换为 0 9 表达式2+3*4^5-SIN(X+1)/2中最先进行的运算是(D).

A、SIN B、4^5 C、3*4 D、x+1 10 如果x=2,则表达式x+1>2 Or sin(x)>0.9 And 3>x+3的值( B )。 A、不能计算 B、 True C、5 D、False 11 随机产生[10,50] 之间整数的正确表达式是( D )。 A、Round( Rnd*50) B、 Int(Rnd*40+10) C、Round( Rnd*51) D、 10+Int(Rnd*41) 12 每建立一个窗体,工程管理器窗口中就会增加一个(C). A、类模块文件 B、工程文件 C、窗体文件 D、程序模块文件 13 INT(100*RND(1))产生的随机整数的闭区间是(B). A、[1,100] B、[0,99] C、[0,100] D、[1,99] 14 下列数据类型中,占用内存最小的是(D). A、Integer B、Single C、Boolean D、Byte 15 VisualBasic是一种()程序设计语言.B A、过程式 B、非过程式 C、机器 D、低级 16 函数Int(10*Rnd)是在(A)范围内的整数. A、[0,9] B、[0,1] C、[1,9] D、[1,10] 17 以下合法的一组Visual Basic用户标识符是 C A、Sum 和 8abc B、a#x 和 Pi C、ForLoop 和 Total D、Const 和 DoWhile

程序设计语言VB单项选择题及答案

《程序设计语言VB》单选题 1. Visual Basic是一种面向()的程序设计语言。 A. 用户 B. 事件 C. 程序 D. 对象 2.在Visual Basic6.0中规定工程文件的扩展名是()。 A. vbp B. for C. frm D. bas 3. Visual Basic6.0中规定窗体文件的扩展名是()。 A. for B. frm C. vbp D. bas 4.如何使一个标签或按钮控件在运行时不可用()。 A. 把它的Visible属性设置成False B. 把它的Visible属性设置成True C. 把它的Enabled属性设置成False D. 把它的Enabled属性设置成True 5.控件的字体可在属性窗口的()属性中调整? A. Font B. Color C. Text D. Caption 6.若要将某命令按钮设置为默认命令按钮。则应设置为True的属性是()。 A. Value B. Cancel C. Default D. Enabled 7.在VB中,记录对象数据的是()。 A. 方法 B. 事件 C. 属性 D. 语句

8.在文本框上显示文本的属性是()。 A. Value B. Text C. Print D. Enabled 9. InputBox函数返回值的类型为()。 A. 字符串 B. 数值 C. 变体 D. 数值或字符串(视输入的数据而定) 10.设有语句:a = InputBox("请输入数值:","输入示例", "100") 程序执行后,若从键盘上输入数值20并按回车键,则变量a的值是()。 A. 字符串"20" B. 字符串"120" C. 默认值100 D. 数值120 11.下列控件中可用于接受用户输入文本,又可用于显示文本的是()。 A. Label控件 B. TextBox控件 C. Timer控件 D. CommandButton控件 12.语句PRINT "25*4"的输出结果是()。 A. 25*4 B. "100" C. 100 D. 出现错误信息 13.只能用来显示字符信息的控件是()。 A. 文本框 B. 标签框 C. 图片框 D. 图像框 14.下列可作为Visual Basic变量名的是()。 A. A%A B. 4A C. ?xy D. Stemp 15.下列哪个符号不能作为VB中的变量名()。 A. timefly B. pass4

相关文档
最新文档