VB程序设计.docx
- 文档编号:5427664
- 上传时间:2022-12-16
- 格式:DOCX
- 页数:17
- 大小:22.98KB
VB程序设计.docx
《VB程序设计.docx》由会员分享,可在线阅读,更多相关《VB程序设计.docx(17页珍藏版)》请在冰豆网上搜索。
VB程序设计
《VB程序设计》综合复习资料
一、填空题
1.在VB中工程文件的扩展名是____________,窗体文件的扩展名是____________,标准模块文件的扩展名是____________。
2.一个控件在窗体的位置由______和________属性决定,其大小由__________和_________属性决定。
3.变量的声明分为两种方法:
__________和____________。
4.使用____________方法可在窗体中进行文本的输出,用____________方法可画圆,用____________方法可画直线。
5.类是具有相同性质的对象的_________。
6.利用对象的属性setfocus可获得焦点,对于一个对象,只有其visible属性和____________属性为true,才能接受焦点。
7.文件按存取方式及其组成结构可分为________________文件、__________文件和______________文件。
8.在VB中,用___________________语句设定数组的下界,用_____________和__________________语句分别返回数组的上、下界。
9.在窗体上画一个名称为“Command1”、标题为“计算”的命令按钮,再画7个标签,其中5个标签组成名称为Label1的控件数组;名称为Label2的标签用于显示计算结果,其Caption属性的初始值为空;标签Label3的标题为“计算结果”。
运行程序时会自动生成5个随机数,分别显示在标签控件数组的各个标签中。
单击“计算”按钮,则将标签数组各元素的值累加,然后计算结果显示在Label2中。
请填空。
PrivateSubCommand1_Click()
Sum=0
Fori=0To4
Sum=Sum+____
Nexti
_____=Sum
EndSub
10.在窗体上画两个名称分别为Command1和Command2、标题分别为“初始化”和“求和”的命令按钮。
程序运行后,如果单击“初始化”命令按钮,则对数组a的各元素赋值;如果单击“求和”命令按钮,则求出数组a的各元素之和,并在文本框中显示出来。
请填空。
OptionBase1
Dima(3,2)AsInteger
PrivateSubCommand1_Click()‘“初始化”命令按钮
Fori=1To3
Forj=1To2
____=i+j
Nextj
Nexti
EndSub
PrivateSubCommand2_Click()‘“求和”命令按钮
Forj=1To3
Fori=1To2
s=s+____
Nexti
Nextj
Text1.Text=____
EndSub
11.语句Forj=3To20Step3使循环体执行了______次。
12.若要将窗体Form1隐藏起来,则可通过执行代码_________________来实现。
13.要将焦点定位到命令按钮Command1上,需要使用代码__________。
14.为了使一个Picture控件能自动根据装入的图片调整大小,应设置该控件的________________属性为True。
15.要使装入到列表框中的数据项能自动按字母顺序排序,应设置该控件的_________属性为__________。
16.在VisualBasic中声明静态变量的关键字是_________________。
17.表达式10Mod6\4的值为______。
18.窗体上放置了若干个文本框和命令按钮,当窗体装入后,要将焦点自动定位到文本框Text1上,则在设计时需要将__________控件的_________属性设置为__________。
19.要使一个Picture控件不能自动根据装入的图片调整大小,应设置该控件的AutoSize属性为________________。
20.对于正在使用的动态数组Arraya(),要增加一个单元,但不能破坏数组内的数据,则必须在语句ReDim中包括__________。
21.函数Abs(x)的功能是__________。
22.表达式3/6*5的值是__________。
23.表达式chr(Asc("a")+5)的值为_________。
24.VB中使用注释有2种方法,即________和________。
25.VB中的数据以四种形式存储:
常量、_________、_________和记录。
26.在标签控件中通过编程使文字换行用的代码是___________________。
27.要使鼠标停留在按钮上显示特殊的鼠标形状,应设置的属性值是_________________。
28.设某列表框共有10项,按题目要求补齐程序,完成相应的功能。
(1)按下命令按钮Command1时将列表框第8项的内容显示在窗体上:
PrivateSubCommand1_Click()
List.__________(7)=True
PrintList1.______________
EndSub
(2)单击列表框某一项时立即将该项打印在窗体上:
PrivateSubList1_Click()
Print_______________
EndSub
(3)按下命令按钮Command1时在窗体上删除第1、3、5、7、9项:
PrivateSubCommand1_Click()
ForI=1To5
List1.____________
NextI
EndSub
(4)在列表框的每一项之后插入一个新的项:
PrivateSubCommand1_Click()
ForI=1to10
X=InputBox(“请输入插入的第”&I&“项内容”)
List1.AddItem____________
NextI
EndSub
29.设在界面上放置了一个滚动条Hscroll1和一个标签控件Label1,要使每次单击滚动条两端箭头时,或单击滚动条滑块与两端箭头之间的空白区域时,标签内容能够反映滚动条的值,补齐以下代码。
PrivateSubHscroll1.__________________()
Label1.Caption=Hscroll1.___________________
EndSub
要使拖动滚动条滑块时标签内容能够反映滚动条的值,补齐以下代码。
PrivateSubHscroll1.________________()
Label1.Caption=Hscroll1.__________________
EndSub
30.生成消息框的命令是____________,生成输入框的命令是____________。
二、选择题
1.以下叙述中错误的是()
A.事件过程是响应特定事件的一段程序
B.不同的对象可以具有相同名称的方法
C.对象的方法是执行指定操作的过程
D.对象事件的名称可以由编程者指定
2.以下合法的VisualBasic标识符是()
A.ForLoopB.ConstC.9abcD.a#x
3.当一个复选框被选中时,它的Value属性的值是()
A.3B.2C.1D.0
4.表达式5Mod3+3\5*2的值是()
A.0B.2C.4D.6
5.设x=4,y=8,z=7,表达式x A.1B.-1C.TrueD.False 6.假定有以下程序段: Fori=1to3 Forj=5to1Step–1 Printi*j Nextj,i 则语句Printi*j的执行次数是() A.15B.16C.17D.18 7.以下叙述中错误的是() A.如果过程被定义为Static类型,则该过程中的局部变量都是Static类型 B.Sub过程中不能嵌套定义Sub过程 C.Sub过程中可以嵌套调用Sub过程 D.事件过程可以像通用过程一样由用户定义过程名 8.从键盘上输入两个字符串,分别保存在变量str1、str2中。 确定第二个字符串在第一个字符串中起始位置的函数是() A.LeftB.MidC.StringD.Instr 9.以下能够触发文本框Change事件的操作是() A.文本框失去焦点B.文本框获得焦点 C.设置文本框的焦点D.改变文本框的内容 10.假定有一个菜单项,名为MenuItem,为了在运行时使该菜单项失效(变灰),应使用的语句为() A.MenuItem.Enabled=FalseB.MenuItem.Enabled=True C.MenuItem.Visible=TrueD.MenuItem.Visible=False 11.为了使用通用对话框进行打开文件的操作,应将通用对话框的Action属性设定为() A.0B.1C.2D.3 12.为了检测到用户按下键盘上的所有键,应该使用的键盘事件为() A.KeyPressB.MouseDownC.KeyDownD.MouseUp 13.用于从内存删除窗体的命令是() A.MoveB.HideC.UnloadD.Delete 14.用于设置文件列表框控件显示文件类型的属性是() A.FilterB.PathC.ParternD.FileName 15.用于返回窗体可用区域宽度的属性是() A.ScaleWidthB.ScaleLeftC.ScaleHeightD.ScaleTop 三、读程序题 1.分析以下程序,写出运行结果。 PrivateSubForm_Click() score=Int(Rnd*10)+80 SelectCasescore CaseIs<60 A$="F" Case60To69 A$="D" Case70To79 A$="C" Case80To89 A$="B" CaseElse A$="A" EndSelect PrintA$ EndSub 2.读下面的程序,分析其功能,写出运行结果。 在窗体上有一个命令按钮,名称为Command1。 然后编写如下程序: PrivateSubCommand1_Click() ForI=1To4 ForJ=0ToI PrintChr$(65+I); NextJ Print NextI EndSub 程序运行后,如果单击命令按钮,则在窗体上显示的内容是什么? 3.阅读下面的程序,写出执行结果。 PrivateSubForm_load() Form1.show d=0 Fora=1To2 Forb=1Toa Forc=bTo5 d=d+1 Nextc Nextb Nexta Printd EndSub 4.阅读下面的程序,分析并写出其功能。 Subinsert(a()AsSingle,ByValxAsSingle) Dimmasinteger,nasinteger n=1 DoWhilen<20Andx>a(n) n=n+1 Loop Form=20-1TonStep–1 a(m+1)=a(m) Nextm a(n)=x EndSub 5.分析以下程序,写出运行结果。 SubselectPrint() DimaasInteger DimbasInteger DimcasInteger a=2: b=5: c=2 If(a>=b)and(a>=c)or(b>c)Then Printa a=a+2 Else Printb EndIf Printa;b;c EndSub 6.阅读下面的程序,写出执行结果。 SubselectPrint() DimaasInteger DimbasInteger DimcasInteger a=3: b=3: c=2 If(a>=b)and(a>c)ThenPrinta Printa,b,c EndSub 四、简答题 1.在程序设计中为什么尽量不用GoTo语句? 2.框架的作用是什么? 3.滚动条的change事件和scroll事件有什么不同? 4.颜色函数主要有哪些? 3.如何为一个菜单项设置热键和快捷键? 4.表达式2>3And4<=5Or4>4的值是什么? 8.为了防止文本框中的信息运行后被用户修改,应将什么属性设置为什么值? 9.如何在框架中建立控件? 10.逐语句和逐过程有什么区别? 五、编程题(界面自行设计) 1.编程求任意两个正整数(利用两个文本框输入)的最大公约数,并利用标签输出结果。 2.编程实现对n个整数按由小到大的顺序排序。 3.输入一年号,判断它是否是闰年。 界面如下图所示,包括两个标签、一个文本框和一个命令按钮。 提示: 如果此年号能被400整除或者不能被400除尽,也不能被100除尽,但能被4整除,则它是闰年;否则,不是闰年。 4.求一元二次方程ax2+bx+c=0的根(包括实根和复根)。 5.随机输入10个100以内的整型数,计算其和及平均值。 6.输入某学生成绩(百分制),若是100≥成绩≥90输出优秀;若是90>成绩≥80输出良好;若是80>成绩≥70输出中等;若是70>成绩≥60输出及格;若是60>成绩≥0,输出不及格;若是其他数则输出error信息。 7.实现二维数组(矩阵)转置。 8.实现二进制方式文件的复制。 《VB程序设计》综合复习资料参考答案 一、填空题 1.Vbp、frm、bas。 2.Left、top、height、width。 3.隐式声明、显示声明。 4.print、circle、line。 5.集合。 6.enabled。 7.顺序、随机、二进制。 8.optionbase、ubound、lbound。 9.label1(i).caption、label2.caption 10.a(i,j)、a(j,i)、s 11.6。 12.Form1.Hide。 13.Command1.SetFocus。 14.AutoSize。 15.Sorted、Ture。 16.Static。 17.0。 18.Text1、TabIndex、0 19.False 20.preserve 21.求x的绝对值 22.2.5 23.f 24.rem、’ 25.变量、数组 26.chr(10) 27.mousepointer 28.selected、text、list1.text、removeitem2*i-1、x,2*i-1 29.change、value、scrol、value 30.Msgbox、Inputbox 二、选择题 DACBD、ADDDA、BCCCA 三、读程序题 1、结果如下: B 2、结果如下: BB CCC DDDD EEEEE 3、结果如下: 14 4、功能如下: 在20个由小到大排列的数据中插入一个数,插入数据后的数据仍按由小到大的顺序排列。 5、结果如下: 2 452 6、结果如下: 3 332 四、简答题答案要点 1、主要是为了结构化。 2、框架主要是用作容器,可以实现多组单选按钮,并且可以美化界面。 3、主要是用鼠标拖动滑块时对Value属性的影响不同。 4、颜色函数主要有: RGB、QBColor。 3、为一个菜单项设置热键时需要在相应字符前面加&,设置快捷键需要在菜单编辑器中选择。 4、False。 8、应将Locked属性设为True。 9、先建立框架,然后再在其中建立控件。 10、逐语句和逐过程的区别: 前者进入过程内部,而后者不进入过程内部。 五、编程题 说明: 只要能完成指定的功能,界面怎么设计都行。 也就是说,界面如何以及代码写在哪个事件中都没有关系,但前提是必须保证完成相应的功能。 1、参考程序如下: PrivateSubCommand1_Click() Dimm,n,rAsInteger m=Val(Text1.Text) n=Val(Text2.Text) Ifm<0Orn<0Then Label2.Caption="输入数据有错! " Else r=mModn DoWhiler<>0 m=n n=r r=mModn Loop Label2.Caption="最大公约数为: "&n EndIf EndSub 2、参考程序如下: PrivateSubsort(arraya()AsInteger,nAsInteger) DimpAsInteger,iAsInteger,jAsInteger,tempAsInteger Fori=1Ton-1 p=i Forj=i+1Ton Ifarraya(p)>arraya(j)Thenp=j Nextj Ifp<>iThentemp=arraya(i): arraya(i)=arraya(p): arraya(p)=temp Nexti EndSub 3、参考程序如下: PrivateSubCommand1_Click() Dimyear,xAsInteger year=Val(Text1.Text) IfyearMod400=0Then Label2.Caption="是闰年" Else IfyearMod4=0AndyearMod100<>0Then Label2.Caption="是闰年" Else Label2.Caption="不是闰年" EndIf EndIf EndSub 4、参考程序如下: PrivateSubCommand1_Click() Dima,b,c,delt,realpart,imagpartAsSingle a=Val(Text1.Text): b=Val(Text2.Text): c=Val(Text3.Text): delt=b*b-4*a*c Ifa=0Then Label2.Caption="是一元一次方程: " Ifb<>0then Text4.Text="x1="&-c/b Else Ifc=0then Text4.Text="有无穷根" Else Text4.Text="无根" Endif Endif Else Ifdelt=0Then Label2.Caption="有两个相等的实根: " Text4.Text="x1="&-b/2/a Text5.Text="x2="&-b/2/b ElseIfdelt>0Then Label2.Caption="有两个不等的实根: " Text4.Text="x1="&(-b+Sqr(delt))/(2*a) Text5.Text="x2="&(-b-Sqr(delt))/(2*a) Else Label2.Caption="有两个共轭复根: " realpart=-b/(2*a) imagpart=Sqr(-delt)/(2*a) Text4.Text="x1="&realpart&"+"&imagpart&"i" Text5.Text="x2="&realpart&"-"&imagpart&"i" EndIf EndIf EndSub 5.参考代码如下: PrivateSubForm_Click() Dima(10)AsInteger,iAsInteger DimsumAsInteger,aveAsInteger sum=0 Fori=1To10 a(i)=Int(Rnd*101) sum=sum+a(i) Nexti ave=sum/10 Printsum,ave EndSub 6.参考代码如下: PrivateSubCommand1_Click() DimxAsSingle x=Val(Text1.Text) Ifx>100Orx<0Then Text2.Text="error" ElseIfx<60Then Text2.Text="不及格" ElseIfx<70Then Text2.Text="及格" ElseIfx<80Then Text2.Text="中等" ElseIfx<90Then Text2.Text="良好" Else Text2.Text="优秀" EndIf EndSub 7.参考代码如下: OptionBase1 PrivateSubForm_Load() ConstN=4'常量N决定二维数组大小 Dima(N,N)AsInteger Dimi,j,TempAsInteger Show '数组初始化 Fori=1ToN'For循环i从1变化到N Forj=1ToN a(i,j)=i*10+j Nextj Nexti '输出原始数组 Print"转置前的数组: " Fori=1ToN'For循环i从1变化到N Forj=1ToN Printa(i,j); Nextj Print Nexti '数组转置 Fori=1ToN'For循环i从1变化到N Forj=1Toi'交换 Temp=a(i,j) a(i,j)=a(j,i) a(j,i)=Temp Nextj Nexti '输出转置后的数组 P
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VB 程序设计