vb上机试题

时间:2024-06-09 22:52:10编辑:coo君

计算机二级vb上机题库及答案

2009年全国计算机二级VB精选上机考试试题(2)一、基本操作题
  下面出现的“考生文件夹”均为c:\wexam\20060001。
  请根据以下各小题的要求设计Visual Basic应用程序(包括界面和代码)。
  (1)在名称为Form1的窗体上画一个水平滚动条,其名称为HScmll1,然后通过属性窗口设置窗体和滚动条的属性,实现如下功能:窗体标题为“设置滚动条属性”;滚动条所能表示的最小值和最大值分别为0和200,滚动框的初始位置为100。程序运行后,单击滚动条两端的箭头时,滚动框移动的增量值为2,单击滚动框前面或后面的部位时,滚动框移动的增量值为10。程序的运行界面如图32-1所示。要求:不要编写任何代码。
  
  图32-1
  注意:存盘时必须存放在考生文件夹下,工程文件名为kt1.vbp,窗体文件名为kt1.frm。
  (2)在名称为Form1的窗体上画一个文本框,其名称为Text1,如图32-2所示。编写适当的事件过程,使程序运行后,如果单击窗体,则可使文本框移到窗体的左上角;而如果在文本框中输入信息,则可使文本框移到窗体的右上角。程序的运行界面如图32-3所示。
  要求:不得使用任何变量;只允许通过修改属性的方式移动文本框。
  注意:存盘时必须存放在考生文件夹下,工程文件名为kt2.vbp,
  窗体文件名为kt2.frm。
  
  图32-2
  
  图32-3
  二、简单应用题
  下面出现的“考生文件夹”均为c:\wexamL20060001。
  (1)在考生文件夹下有一个工程文件kt3.vbp,相应的窗体文件为kt3.frm。其功能是产生20个0~1000的随机整数,放入一个数组中,然后输出这20个整数中大于500的所有整数之和。程序运行后,单击命令按钮(名称为Command1,标题为“输出大于500的整数之和”),即可求出这些整数的和,并在窗体上显示出来,如图32-4所示。这个程序不完整,请把它补充完整,并能正确运行。
  
  图32-4
  要求:去掉程序中的注释符,把程序中的?改为正确的内容,使其实现上述功能,但不能修改程序中的其他部分。最后把修改后的文件按原文件名存盘。
  (2)在考生文件夹下有一个工程文件kt4.vbp,相应的窗体文件为kt4.frm,在窗体上有一个命令按钮和一个文本框。程序运行后,单击命令按钮,即可计算出0~100范围内不能被7整除的所有整数的和,并在文本框中显示出来。在窗体的代码窗口中,已给出了部分程序,其中计算不能被7整除的整数之和的操作在通用过程Fun中实现,请编写该过程的代码。要求请勿改动程序中的任何内容,只在Ftrnction Fun()和 End Function之间填入所编写的若干语句。最后把修改后的文件按原文件名存盘。
  三、综合应用题
  下面出现的“考生文件夹”均为c:\wexam\20060001。
  在名为Form1的窗体上建立一个名为Text1的文本框,将MultiLine属性设置为True,ScrollBars属性设置为2。再建立两个名称分别为Cmd1、Cmd2和Cmd3命令按钮,标题分别为“读数”、“排序”和“保存”,如图32-5所示。
  程序运行后,如果单击“读数”按钮,则读入in7.txt文件中的100个整数,放入一个数组中(数组下界为1);如果单击“排序”按钮,则对100个整数按从大到小进行排序;如果单击“保存”按钮,则把排序后的全部数据在文本框Text1中显示出来,然后存入考生文件夹中的文件out7.txt中(在考生文件夹下有标准模块mode1.bas过程可以把指定个数的数组元素存入out17.txt文件,考生可以把该模块文件添加到自己的工程中)。
  注意:保存时必须存放在考生文件夹中,窗体文件名为kt5.frm,工程文件名为kt5.vbp,
  排序结果存入out17.txt,否则没有成绩。
  
  图32-5


加分加分!!!谁有2010年9月的计算机二级VB的上机题库啊要带答案的啊,在线急等啊

一、选择题(每小题2分,共70分)

1-5 BCDAA 6-10 DDCBA

11-15 ADDBB 16-20 BCABA

21-25 CDBDC 26-30 ACDAD

31-35 DCCBA

二、填空题(每空2分,共30分)

【1】12345DCBA

【2】n-1

【3】25

【4】结构化

【5】物理设计

【6】array

【7】lbound(city) 或 1

【8】city(i)

【9】fun

【10】276

【11】len

【12】p(i).gName

【13】picFile

【14】CD1.FileName

【15】Visible

注:以上英文字母不区分大小写。

一、选择题(每小题2分,共70分)

(1)下列叙述中正确的是

B)线性表的链式存储结构所需要的存储空间一般要多于顺序存储结构

(2)下列叙述中正确的是

C)在栈中,栈底指针不变,栈中元素随栈顶指针的变化而动态变化

(3)软件测试的目的是

D)发现程序中的错误

(4)下面叙述中,不属于软件危机表现的是

A)软件过程不规范

(5)软件生命周期是指

A)软件产品从提出、实现、使用维护到停止使用退役的过程

(6)面向对象方法中,继承是指

D)类之间共享属性和操作的机制

(7)层次型、网状型和关系型数据库划分原则是

D)数据之间的联系方式

(8)一个工作人员可以使用多台计算机,而一台计算机可被多个人使用,则实体工作人员与实体计算机之间的联系是

C)多对多

(9)数据库设计中反映用户对数据要求的模式是

B)概念模式

(10)有三个关系R、S和T如下:

R S T

A B C A D A B C D

a 1 2 c 4 c 3 1 4

b 2 1

c 3 1

则由关系R和S得到关系T的操作是

A)自然连接

(11)在Visual Basic集成环境中,要添加一个窗体,可以单击工具栏上的一个按钮,这个按钮是

A)

(12)在Visual Basic集成环境的设计模式下,用鼠标双击窗体上的某个控件打开的窗口是D)代码窗口

(13)下列叙述错误的是

D)组合框有Text属性,而列表框没有

(14)设窗体上有一个命令按钮数组,能够区分数组中各个按钮的属性是

B)Index (15)滚动条可以响应的事件是

B)Scroll

(16)设a=5,b=6,c=7,d=8,执行语句x=Iif((a>b) and (c>d),10,20)后,x的值是

B)20

(17)语句Print Sgn(-6^2) Abs(-6^2) Int(-6^2)的输出结果是

C)-1

(18)在窗体上画一个图片框,再在图片框中画一个命令按钮,位置如图所示。则命令按钮的Top属性值是

A)200

(19)在窗体上画一个名称为Command1的命令按钮。单击命令按钮时执行如下事件过程:

Private Sub Command1_Click()

a$ = "software and hardware"

b$ = Right(a$, 8)

c$ = Mid(a$, 1, 8)

MsgBox a$, , b$, c$, 1

End Sub

则在弹出的信息框标题中显示的标题是

B)hardware

(20)在窗体上画一个文本框(名称为Text1)和一个标签(名称为Label1),程序运行后,如果在文本框中输入文本框,则标签立即显示相同的内容。以下可以实现上述操作的事件过程是

A)Private Sub Text1_Change()

Label1.Caption=Text1.Text

End Sub

(21)以下说法中错误的是

C)命令按钮只能识别单击(Click)事件

(22)以下关于局部变量的叙述中错误的是

D)过程执行完毕后,该过程中用Dim或Static语句声明的变量即被释放。

(23)以下程序段的输出结果是

x=1

y=4

Do Until y>4

x=x*y

y=y 1

Loop

Print x

B)4

(24)如果执行一个语句后弹出如图所示的窗口,则这个语句是

D)x=InputBox(“请输入VB数据”,”输入框”)

(25)有如下事件过程:

Private Sub Form_Click()

Dim n As Integer

x = 0

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

For i = 1 To n

For j = 1 To i

x = x 1

Next j

Next i

Print x

End Sub

程序运行后,单击窗体,如果在输入对话框中输入5,则在窗体上显示的内容是

C)15

(26)请阅读程序:

Sub SubP(b() As Integer)

For i=1 To 4

b(i)=2*i

Next i

End Sub

Private Sub Command1_Click()

Dim a(1 To 4) As Integer

a(1)=5 : a(2)=6 : a(3)=7 : a(4)=8

subP a()

For i=1 To 4 Print a(i) Next i End Sub 运行上面的程序,单击命令按钮,则输出结果是

A)2

4

6

8

(27)Fibonacci数列的规律是:前2个数为1,从第3个数开始,每个数是它前2个数之和,即:1,1,2,3,5,8,13,21,34,55,89,…。某人编写了下面的函数,判断大于1的整数x是否是Fibonacci数列的某个数,若使,则返回True,否则返回False。

Function Isfab(x As Integer) As Boolean

Dim a As Integer, b As Integer, c As Integer, flag As Boolean

flag = False

a = 1: b = 1

Do While x < b

c = a b

a = b

b = c

If x = b Then flag = True

Loop

Isfab = False

End Function

测试时发现对于所有正整数x,函数都返回False,程序需要修改。下面的修改方案中正确的是

C)把Do While xb

(28)在窗体上画一个命令按钮,其名称为Command1,然后编写如下事件过程:

Private Sub Command1_Click()

Dim a$, b$, c$, k%

a = "ABCD"

b = "123456"

c = ""

k = 1

Do While k <= Len(a) Or k <= Len(b)

If k <= Len(a) Then

c = c & Mid(a, k, 1)

End If

If k <= Len(b) Then

c = c & Mid(b, k, 1)

End If

k = k 1

Loop

Print c

End Sub

运行程序,单击命令按钮,输出结果是

D)A1B2C3D456

(29)请阅读程序:

Private Sub Command1_Click()

m = 1

For i = 4 To 1 Step -1

Print Str(m);

m = m 1

For j = 1 To i

Print "*";

Next j

Print

Next i

End Sub

程序运行后,单击窗体,则输出结果是

A)1****

2***

3**

4*

(30)在窗体上画一个命令按钮(其名称为Command1),然后编写如下代码:

Private Sub Command1_Click()

Dim a

a = Array(1, 2, 3, 4) i = 3: j = 1 Do While i >= 0 s = s a(i) * j i = i - 1 j = j * 10 Loop Print s End Sub 运行上面的程序,单击命令按钮,则输出结果是

D)1234

(31)下列可以打开随机文件的语句是

D)Open “file1.dat” For Random As #1 Len=20

(32)有弹出式菜单的结构如右表,程序运行时,单击窗体则弹出如下图所示的菜单。下面的事件过程中能正确实现这一个功能的是

C)Private Sub Form_Click()

PopupMenu edit

End Sub

(33)请阅读程序:

Option Base 1

Private Sub Form_Click()

Dim Arr(4, 4) As Integer

For i = 1 To 4

For j = 1 To 4

Arr(i, j) = (i - 1) * 2 j

Next j

Next i

For i = 3 To 4

For j = 3 To 4

Print Arr(j, i);

Next j

Print

Next i

End Sub

程序运行后,单击窗体,则输出结果是

C)7 9

8 10

(34)下面函数的功能是:删除字符串str中所有与变量ch相同的字符,并返回删除后的结果。例如:若str=”ABCDABCD”,ch=”B”,则函数的返回值为:“ACDACD”。

Function delchar(str As String, ch As String) As String

Dim k As Integer, temp As String, ret As String

ret = ""

For k = 1 To Len(str)

temp = Mid(str, k, 1)

If temp = ch Then

ret = ret & temp

End If

Next k

delchar = ret

End Function

但实际上函数有错误,需要修改。下面的修改方案中正确的是

B)把If temp=ch Then 改为 If temp ch Then

(35)在窗体上画一个命令按钮和两个文本框,其名称分别为Command1、Text1和Text2,在属性窗口中把窗体的KeyPreview属性设置为True,然后编写如下程序:

Dim S1 As String, S2 As String

Private Sub Form_Load()

Text1.Text = ""

Text2.Text = ""

Text1.Enabled = False

Text2.Enabled = False

End Sub

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)

S2 = S2 & Chr(KeyCode)

End Sub

Private Sub Form_KeyPress(KeyAscii As Integer)

S1 = S1 & Chr(KeyAscii)

End Sub

Private Sub Command1_Click()

Text1.Text = S1 Text2.Text = S2 S1 = "" S2 = "" End Sub 程序运行后,先后按“a”、“b”、“c”键,然后单击命令按钮,在文本框Text1和Text2中显示的内容分别为:

A)abc和ABC

二、填空题(每空2分,共30分)

(1)一个栈的初始状态为空。首先将元素5、4、3、2、1依次入栈,然后退栈一次,再将元素A,B,C,D依次入栈,之后将所有元素全部退栈,则所有元素退栈(包括中间退栈的元素)的顺序为【1】12345DCBA。

(2)在长度为n的线性表中,寻找最大项至少需要比较【2】n-1次。

(3)一棵二叉树有10个度为1的结点,7个度为2的结点,则该二叉树共有【3】25个结点。

(4)仅有顺序、选择(分支)和重复(循环)结构构成的程序是【4】结构化 程序。

(5)数据库设计的四个阶段:需求分析、概念设计、逻辑设计和【5】物理设计。

(6)窗体上有一个名称为Combo1的组合框,其初始内容为空,有一个名称为Command1、标题为“添加项目”的命令按钮。程序运行后,如果单击命令按钮,会将给定数组中的项目添加到组合框中,如图所示。请填空。

Option Base 1

Private Sub Command1_Click()

Dim city As Variant

city =【6】 Array("北京", "天津", "上海", "武汉", "重庆", "西宁")

For i = 【7】LBound(city) 或1 To UBound(city)

Combo1. AddItem 【8】city(i)

Next

End Sub

(7)窗体上有一个名称为Text1的文本框和一个名称为Command1、标题为“计算”的命令按钮,如图所示。函数fun及命令按钮的单击事件过程如下,请填空。

Private Sub Command1_Click()

Dim x As Integer

x = Val(InputBox("输入数据"))

Text1 = str(fun(x) fun(x) fun(x))

End Sub

Private Function fun(ByRef n As Integer)

If n Mod 3 = 0 Then

n = n n

Else

n = n * n

End If

【9】fun = n

End Function

当单击命令按钮,在输入对话框中输入2时,文本框中显示的是【10】276。

(8)窗体上有一个名称为List1的列表框,一个名称为Picture1的图片框。Form_Load事件过程的作用是,把Data1.txt文件中物品名称添加到列表框中。运行程序,当双击列表框中的物品名称时,可以把该商品对应的图片显示在图片框中,如图所示。以下是类型定义及程序,请填空。

Private Type Pic

gName As String * 10 '物品名称

picFile As String * 20 '物品图片的图片文件名

End Type

Dim p(4) As Pic, pRec As Pic

Private Sub Form_Load()

Open "Data1.txt" For Random As #1 【11】Len = Len(pRec)

For i = 0 To 4

Get #1, i 1, p(i)

List1.AddItem p(i).gName

Next i

Close #1

End Sub

Private Sub List1_DblClick()

For i = 0 To 4

If RTrim(List1.List(i)) = RTrim(【12】p(i).gName) Then

Picture1.Picture = LoadPicture(p(i).【13】picFile)

Exit For

End If

Next

End Sub

(9)窗体上有一个名称为CD1的通用对话框。通过菜单编辑器建立如图1所示的菜单。程序运行时,如果单击“打开”菜单项,则执行打开文件的操作,当选定了文件(例如:G:\VB\2010-9\in.txt)并打开后,该文件的文件名会被添加到菜单中,如图2所示。各菜单项的名称和标题等定义如下表。

以下是单击“打开”菜单项的事件过程,请填空。

Dim mnuCounter As Integer

Private Sub mnuOpen_Click() CD1.ShowOpen If CD1.FileName "" Then Open 【14】CD1.FileName For Input As #1 mnuCounter = mnuCounter 1 Load FName(mnuCounter) FName(mnuCounter).Caption = CD1.FileName FName(mnuCounter).【15】Visible = True End If End Sub


VB上机考试习题

先说For j = 1 To 6 - i
Print " ";
功能是输出上面5行最前面的空格。公式:空格个数=6-行号。例如第2行要输出6-2=4个空格。

再说For j = 1 To i + 1
Print " ";
功能是输出下面4行最前面的空格。把第6行的行号看作1,那么公式:空格个数=行号+1.例如第6行输出2个空格。

你要是不理解,可以删除你不理解的代码,发现前面的空格都没了,你就理解了。


有3道VB上机题目,求写明程序过程,不难。高分

Option Base 1

Private Sub Command1_Click()
Dim a(4, 5) As Integer, i As Integer, j As Integer
Dim amin As Integer
Randomize
For i = 1 To 4
For j = 1 To 5
a(i, j) = Int(Rnd * 31 + 10)
Print a(i, j);
Next j
Print
Next i

amin = a(1, 1)
For i = 1 To 4
For j = 1 To 5
If a(i, j) < amin Then amin = a(i, j)
Next j, i

For i = 1 To 4
For j = 1 To 5
If a(i, j) = amin Then Print "amin=" & amin, "i=" & i, "j=" & j
Next j, i

End Sub

Private Sub Command2_Click()
Dim f(20) As Integer
f(1) = 1
f(2) = 1
For i = 3 To 20
f(i) = f(i - 1) + f(i - 2)
Next
For i = 1 To 20
If (i - 1) Mod 5 = 0 Then Print
Print f(i);
Next
End Sub

Private Sub Command3_Click()
Dim i As Integer
For i = 1 To 100
If i Mod 10 = 0 Then Print
If i Mod 2 0 Then Print i;
Next
End Sub


vb上机题:定义一个8个元素的数组,随机产生8个两位正整数存于该数组中,然后再任意输入一个数,查找

Dim fm(8) As Integer
Private Sub Command1_Click()
Dim a As Integer
a = InputBox("请输入数")
Me.Caption = a
For i = 0 To 7
If fm(i) = a Then
MsgBox a & "的数据存在"
Exit For
End If
Next i
End Sub

Private Sub Form_Load()
For i = 0 To 7
fm(i) = Int(Rnd * 999 + 1)
List1.AddItem fm(i)
Next i

End Sub


二级vb上机题

Option Explicit

Private Sub Command1_Click()
Dim i As Integer, st As String
Dim n() As Integer, k As Integer
For i = 2 To 10
Call check(i, n)
st = st & CStr(i) & "^3=" & CStr(i ^ 3) & "="
For k = 1 To UBound(n) - 1
st = st & Str(n(k)) & "+"
Next k
st = st & Str(n(k)) & vbCrLf
Next i
Text1 = st
End Sub

Private Sub check(ByVal n As Integer, a() As Integer)'名字错了,并且n是byval的传递方式
Dim sum As Integer, i As Integer, j As Integer
Dim p As Integer
n = n ^ 3'这里是n
For i = 1 To n \ 2 Step 2
p = 0'赋值在外面
For j = i To n Step 2
sum = sum + j
p = p + 1
ReDim Preserve a(p)
a(p) = j'记录的是p的值
If sum = n Then Exit Sub'退出程序
If sum > n Then Exit For
Next j
Erase a
sum = 0
Next i
End Sub


vb中输入圆的半径r,利用单选按钮选择计算圆的面积、圆的周长等

import java.util.Scanner;public class Main {public static void main(String args[]) {Scanner sc = new Scanner(System.in);System.out.print("输入半径:");int r = sc.nextInt();sc.close();double s = Math.PI * r * r;double c = Math.PI * r * 2;System.out.println("圆的面积:" + s + ",圆的周长:" + c);}}

VB程序根据输入的圆半径r求直径周长面积球体积球面积怎么写程序?

Option ExplicitConst pi = 3.141592654Private Sub Form_Load() Me.AutoRedraw = True Dim r As Double r = Val(InputBox("输入半径")) Print "直径:" & 2 * r Print "周长:" & 2 * r * pi Print "圆面积: " & r * r * pi Print "球面积: " & 4 * r * r * r * pi / 3 Print "球体积: " & 4 * r * r * pi End Sub

上一篇:免费回合制网游

下一篇:璀璨人生腾讯视频