学年第一学期VB程序设计复习提纲.docx
《学年第一学期VB程序设计复习提纲.docx》由会员分享,可在线阅读,更多相关《学年第一学期VB程序设计复习提纲.docx(19页珍藏版)》请在冰豆网上搜索。
![学年第一学期VB程序设计复习提纲.docx](https://file1.bdocx.com/fileroot1/2023-7/23/9d37734c-af54-492b-814a-312ccddfa887/9d37734c-af54-492b-814a-312ccddfa8871.gif)
学年第一学期VB程序设计复习提纲
期末考试题型:
单项选择题(30小题,共30分)
填空题(20小题,共20分)
编程题(4道题,共36分)
程序填空(2个程序,7个空,共14分)
填空题
1.VB语言中,菜单分为下拉式菜单和__________________。
2.面向对象系统的三个基本特性是封装性、______________和多态性。
3.设在窗体上有一通用对话框Commondialog1,为建立一个“打开”对话框,应把__________________属性设置为1。
4.命令按钮的_____________属性为True时,表示该控件有效,即能够响应用户的操作。
5.能够释放窗体Form1所占用的内存空间的语句是__________________。
6.若有定义Dimx(-2to4)asInteger,则函数UBound(x)的值为_______。
7.如果要从顺序文件中读数据,则打开方式应为________________。
8.关键字__________________用于定义变体类型数据。
9.XOR是逻辑__________________运算符。
10.表示变量x既是5的倍数,也是7的倍数的逻辑表达式为__________________。
11.在VB语言中,窗体文件的扩展名为__________________。
12.向随机文件或二进制文件中写入数据所用的命令关键字为_____________。
13.函数过程(或子程序过程)直接或间接地调用自身称为________________。
14.程序运行期间,用鼠标单击滚动条上滑块两侧的空白处时,滑块的移动量是滚动条控件的_________属性。
15.设置数组下标的默认下界为1的语句是__________________。
16.用关键字sub定义的过程称为__________________。
17.鼠标指针置于工具箱窗口中的某一个控件图标上时,就会在工具提示窗口上显示出相应的类型名。
如果显示"pictureBOX",该控件是__________________。
18.文本框的默认属性是__________________。
19.与传统的程序设计语言相比,VisualBasic最突出的特点是______________。
20.VB窗体设计器的主要功能是__________________。
21.两个操作数取值相同为“假”,不同为“真”的运算符是______________。
22.在程序中,要在图片框或图像框中加载图片,可用函数_____________。
23.有一名为menuItem的菜单项,为了在程序运行时使该菜单项失效,应使用的语句为__________________。
24.能够加载并显示窗体Form1的语句是__________________。
25.程序运行期间,如果拖动滚动条上的滚动块,则触发的滚动条事件是________。
26.在VB中,字符串"天津2003Test"需要的长度为____________。
27.在VB中,声明货币类型变量所用的关键字为__________________。
28.能够表示当整型变量x是奇数时为真的VB表达式为__________________。
29.数学表达式
写成VB表达式为__________________。
30.从结构化程序设计角度看,程序的控制结构分为顺序结构、选择结构和_____________________。
31.鼠标指针置于工具箱窗口中的某一个控件图标上时,就会在工具提示窗口上显示出相应的类型名。
如果显示"Image",该控件是__________________。
32.在VB语言中,提前结束子程序过程的执行需要使用命令_______________。
33.VB程序中的对话框分为__________________、自定义对话框和通用对话框。
34.在VB中,声明布尔类型变量所用的关键字为__________________。
35.赋值语句a=123&mid(“”,3,2)执行后,变量a的值是___________。
36.根据文件中数据存取方式的不同,可以将数据文件分为顺序文件、______________和二进制文件。
37.从结构化程序设计角度看,程序的控制结构分为______________、选择结构和循环结构。
38.在VB语言中,用关键字function定义的过程称为__________________。
39.在应用领域中,任何有意义的事物称为_________________。
40.在VB语言中,用_________________设计菜单和菜单项。
41.定义过程或函数时,形参之前有关键字_________________,表示按参数值传递数据。
42.名称属性相同的同类型控件称为_________________。
43.表示列表框中选项数目的属性为_________________。
44.VB程序中的对话框分为预定义对话框、自定义对话框和__________________。
45.语句Dimarr(3,2to4)AsInteger定义的数组arr含有的元素个数为_________________。
46.控件数组的下标对应控件的__________________属性。
47.能够表示当整型变量x是偶数时为真的VB表达式为__________________。
48.若要求文本框显示多行文本,应将文本框的___________属性设置为True。
49.VB语言中,数组可分为__________________和可变大小的数组。
50.能够提前结束Do...Loop结构循环的语句为__________________。
51.VB语言中,可用__________________方法输出数据。
52.能够表示随机产生一个两位整数的VB表达式为__________________。
53.在VB语言中,有两种形式的常量,分别为普通常量和__________________。
54.按照执行方式,高级程序设计语言分为___________和编译型两种。
55.在VB窗口中进行界面设计时,若双击窗体中的某个控件对象,打开的窗口是__________________。
56.表达式120+mid(“”,3,3)的值为__________________。
57.定义全局变量需要使用关键字__________________。
58.使用______________方法能够装载窗体,但不能显示该窗体。
59.在VB中,声明双精度类型变量所用的关键字为__________________。
60.根据文件中数据存取方式的不同,可以将数据文件分为顺序文件、随机文件和__________________。
编程题
1.有一个工程文件,在窗体Form1上有两个文本框,名称分别为Text1和Text2,内容分别为“文本框1”和“文本框2”,编写适当的事件过程。
程序运行后,如果单击窗体,则Text1隐藏,Text2显示,如果双击窗体,则Text1显示,Text2隐藏。
注意:
不得使用任何内存变量。
程序设计代码如下所示:
PrivateSubForm_Click()
Text1.Visible=False
Text2.Visible=True
EndSub
PrivateSubForm_DblClick()
Text1.Visible=True
Text2.Visible=False
EndSub
2.有一个工程文件,在窗体Form1上有一个图像框,名称为Image1,其stretch属性值为True、picture属性值为pic1.bmp;还有两个命令按钮,名称分别为C1、C2,标题分别为“放大”、“缩小”,如图所示。
要求:
请编写适当的事件过程,程序运行后,如果单击“放大”按钮,则把图像框的高度、宽度均增加100;单击“缩小”按钮,则把图像框的高度、宽度均减少100。
要求程序中不得使用任何变量。
程序的代码如下所示:
PrivateSubC1_Click()
Image1.Height=Image1.Height+100
Image1.Width=Image1.Width+100
EndSub
PrivateSubC2_Click()
Image1.Height=Image1.Height-100
Image1.Width=Image1.Width-100
EndSub
3.工程文件,窗体上有一个文本框,名称为text1;一个命令按钮,名称为Com1,标题为“确定”,还有三个单选按钮,名称分别为op1,op2,op3,标题分别为”飞机”“火车”“汽车”。
请编写适当的事件过程:
在程序运行时,选中一个单选按钮,并单击“确定”按钮后,按照下表在文本框中显示相应的内容。
飞机
火车
汽车
在文本框中显示的内容
选中
需要一小时
选中
需要十小时
选中
需要十五小时
程序设计代码如下所示:
PrivateSubCom1_Click()
IfOp1.ValueThen
Text1.Text="需要一小时"
ElseIfOp2.ValueThen
Text1.Text="需要十小时"
Else
Text1.Text="需要十五小时"
EndIf
EndSub
4.有一个工程文件,其窗体的标题属性为:
“改变文本框的前景与背景颜色”;窗体中包含一个命令按钮(command1),其标题为“设置颜色”;一个文本框(text1)。
要求程序运行时,单击命令按钮,将文本框的的前景色设置为RGB(255,0,0),背景色设置为RGB(0,255,0)。
程序代码如下:
PrivateSubCommand1_Click()
Text1.BackColor=RGB(0,255,0)
Text1.ForeColor=RGB(255,0,0)
EndSub
5.在名称为Form1的窗体上有一个文本框,名称为Text1,允许多行显示;有三个命令按钮,名称分别为C1,C2,C3,标题分别为“输入”,“转换”,“存盘”。
请编写适当的事件过程,使得在运行时,单击“输入”按钮,从文件夹中读入in5.txt文件(文件中只有字母和空格),放入Text1中;单击“转换”按钮,则把Text1中的所有小写字母转换为大写字母;单击“存盘”按钮,则把Text1中的内容存入out5.txt文件中。
注:
所有用到的文件都放在当前盘的当前文件夹下
PrivateSubC1_Click()
DimsAsString
Open"in5.txt"ForInputAs#1
WhileNotEOF
(1)
s=s&Input(1,#1)
Wend
Text1.Text=s
Close#1
EndSub
PrivateSubC2_Click()
Text1.Text=UCase(Text1.Text)
EndSub
PrivateSubC3_Click()
Open"out5.txt"ForOutputAs#1
Print#1,Text1.Text
Close#1
EndSub
6.某工程文件中有一窗体,窗体上有一个命令按钮和一个文本框。
请编写函数过程fun()用于计算0~1000范围内不能被7整除的整数的个数。
程序运行后,单击命令按钮,即可在文本框中输出0~1000范围内不能被7整除的整数的个数。
PrivateFunctionfun()AsInteger
DimiAsInteger
DimcountAsInteger
Fori=0To1000
IfiMod7<>0Thencount=count+1
Nexti
fun=count
EndFunction
PrivateSubCommand1_Click()
Text1.Text=fun()
EndSub
7.有一工程文件的窗体上有两个命令按钮,名为Command1和Command2,标题为“添加”和“清除”;一个文本框,名为Text1,文本框编辑区为空白;一个列表框,名称为List1。
程序运行时,在文本框中输入文本,若单击“添加”按钮,则将文本框中的文本作为列表框的一个列表项添加到列表框的末尾,且使“添加”按钮变为无效,“清除”按钮变有有效;若单击“清除”按钮,则使文本框中的内容为空,且使“添加”按钮变为有效,“清除”按钮变为无效。
PrivateSubCommand1_Click()
List1.AddItemText1.Text
Command1.Enabled=False
Command2.Enabled=True
EndSub
PrivateSubCommand2_Click()
Text1.Text=""
Command1.Enabled=True
Command2.Enabled=False
EndSub
8.在一工程文件的窗体上有两个文本框(名称为Text1和Text2)。
请编写程序实现:
若在Text1中输入大写英文字母,则在Text2中输出对应的小写字母;在Text1中输入小写英文字母,则在Text2中输出对应的大写字母;在Text1中输入空格或数字字符,则在Text2中照原样输出对应的字符;在Text1中输入其他字符,则在Text2中输出“*”。
PrivateSubText1_KeyPress(KeyAsciiAsInteger)
SelectCaseChr(KeyAscii)
Case"A"To"Z"
Text2.Text=Text2.Text&LCase(Chr(KeyAscii))
Case"a"To"z"
Text2.Text=Text2.Text&UCase(Chr(KeyAscii))
Case"0"To"9",Space
(1)
Text2.Text=Text2.Text&Chr(KeyAscii)
CaseElse
Text2.Text=Text2.Text&"*"
EndSelect
EndSub
9.有一个工程文件,窗体上有4个标签,其名称属性分别为Label1(标题属性为“欢迎进入VB世界”)、Label2(标题属性为“字号”)、Label3(标题属性为空,用于显示滚动条的当前值)和Label4(标题属性为“颜色”);一个组合框(名称为Combo1,包含3个项目,分别是“红色”、“绿色”和“蓝色”);一个框架(名称为Frame1,标题属性为“字型”),框架中有两个复选框(名称分别为Check1和Check2,标题分别为“粗体”和“下划线”)。
请编写适当的事件过程,完成以下功能要求:
(1)改变滚动条的当前值,能够将滚动条的当前值显示在标签3上,并且用该值设置标签1的文字字号;
(2)在组合框中单击选中一种颜色后,用该颜色设置标签1的文字颜色;
(3)在框架中选中或取消复选框,可以将该选择体现在标签1的文字上。
如图所示
PrivateSubCheck1_Click()
Label1.FontBold=NotLabel1.FontBold
EndSub
PrivateSubCheck2_Click()
Label1.FontUnderline=NotLabel1.FontUnderline
EndSub
PrivateSubCombo1_Click()
IfCombo1.Text="红色"ThenLabel1.ForeColor=vbRed
IfCombo1.Text="绿色"ThenLabel1.ForeColor=vbGreen
IfCombo1.Text="蓝色"ThenLabel1.ForeColor=vbBlue
EndSub
PrivateSubHScroll1_Change()
Label1.FontSize=HScroll1.Value
Label3.Caption=HScroll1.Value
EndSub
10.有一工程文件,其窗体上有三个顶级菜单(名称分别为Read、Calc、Save,标题分别为“读入数据”、“计算并输出”和“存盘”),窗体中有一个文本框(名称为Text1,MultiLine属性为True,ScrollBars属性为2)(如图所示)。
程序运行后,如果执行“读入数据”命令,则读入datain1.txt文件中的100个整数,放入一个数组中,数组的下界为1;如果单击“计算并输出”菜单,则把该数组中可以被3整除的元素在文本框中显示出来,求出它们的和,并把所求得的和在窗体上显示出来;如果单击“存盘”菜单,则把所求得的和存入考生文件夹下的dataout.txt文件中。
其中“读入数据”菜单的单击事件过程已经定义,请编写“计算并输出”和“存盘”菜单的单击事件过程
OptionBase1
DimArr(100)AsInteger
DimsumAsInteger
PrivateSubread_Click()
Open"datain1.txt"ForInputAs#1
Fori=1To100
Input#1,Arr(i)
Nexti
Close#1
EndSub
PrivateSubcalc_Click()
DimiAsInteger
Text1.Text=""
sum=0
Fori=1To100
IfArr(i)Mod3=0Then
Text1.Text=Arr(i)&vbCrLf&Text1.Text
sum=sum+Arr(i)
EndIf
Nexti
Printsum
EndSub
PrivateSubsave_Click()
Open"dataout.txt"ForOutputAs#1
Print#1,sum
Close#1
EndSub
11.有一个工程文件,其窗体上有一个文本框,名称为text1;两个命令按钮,名称分别为C1和C2,标题分别为“计算”,“存盘”,如图所示。
并有一个函数过程isprime可以在过程中直接调用,其功能是判断参数a是否为素数,如果是素数,则返回true,否则返回false。
编写适当的事件过程。
使得程序运行时,单击“计算”按钮,则找出大于15000的第一个素数,并显示在text1中,单击存盘按钮,则把text1中的计算结果存入当前文件夹下的out4.txt的文件中。
PrivateFunctionprime(aAsInteger)AsBoolean
DimbAsInteger
Forb=2Toa-1
IfaModb=0ThenExitFor
Nextb
Ifb=aThen
prime=True
Else
prime=False
EndIf
EndFunction
PrivateSubCommand1_Click()
DimxAsInteger
x=15001
DoWhilex>=15000
Ifprime(x)Then
Text1.Text=x
ExitDo
EndIf
x=x+2
Loop
EndSub
上述过程也可用For…Next循环实现编写
PrivateSubCommand1_Click()
DimxAsInteger
Forx=15001To20000Step2
Ifprime(x)Then
Text1.Text=x
ExitFor
EndIf
Next
EndSub
PrivateSubCommand2_Click()
Open"out4.txt"ForOutputAs#1
Print#1,Text1.Text
Close#1
EndSub
12.有一工程文件,其Form1窗体上有一个命令按钮(名为Command1,标题属性为“计算并输出最小值”)。
要求编程序实现:
随机产生30个区间[1,1000]内的整数,存入数组a(下标的下界为1)中,然后计算并输出其中的最小值。
程序运行后,单击命令按钮,在窗体上中输出最小值,形式为“最小值为XXX”。
注:
XXX代表[1,1000]内的任意一个数
OptionBase1
PrivateSubCommand1_Click()
Dimx(30)AsInteger
DimiAsInteger,minAsInteger
Fori=1To30
x(i)=Int(Rnd*1001)+1
Nexti
min=x
(1)
Fori=2To30
Ifmin>x(i)Thenmin=x(i)
Nexti
Print"最小值为"&min
EndSub
程序填空
1.有一工程文件,包含两个名称分别为Form1和Form2的窗体,Form1和Form2窗体上建立了标题分别为“C1”和“C2”的按钮。
Form1上按钮的标题为“结束”,Form2上按钮的标题为“显示”,Form2为启动窗体,Form1为不显示。
要求:
在程序运行时显示Form2窗体,单击Form2上的“显示”按钮,则显示Form1窗体,若单击Form1上的“结束”按钮,则关闭Form1和Form2,并结束程序运行。
Form2窗体中的命令按钮的单击事件过程:
PrivateSubC2_Click()
LoadForm1
Form1.Visible=True
EndSub
Form1窗体中的命令按钮的单击事件过程:
PrivateSubC1_Click()
End
EndSub
2.有一工程文件,其窗体(名称为Form1,KeyPreview属性为True)上有一个列表框(名称为List1)和一个文本框(名称为Text1),如图1所示。
编写窗体的KeyDown事件过程。
程序运行后,如果按下键盘上的“A”键,则要求从键盘上输入要添加到列表框框中的项目(内容任意,不少于三个);如果按下“D”键,则从键盘上输入要删除的项目,找到后,将其从列表框中删除。
程序的运行情况如图2所示。
程序不完整,请把它补充完整。
PrivateSubForm_KeyDown(KeyCodeAsInteger,ShiftAsInteger)
IfChr(KeyCode)="A"Then
Text1.Text=InputBox("请输入要添加的项目")
List1.AddItemTe