VB语言程序设计试题库.docx
VB程序设计一、推断题1. 同一Form窗体中的各控件可以互相重叠,其显示的上下层次的次序不行以调整。 X 2. 一个对象的假设能识别多个事务,我们只能对其中一个事务编程 O 3. 单项选择按钮与复选框对象的Value属性类型不同,且只能取值True和False。 4. 事务过程由某个用户事务或系统事务触发执行,它不能被其他过程调用。 O 5. 图片框的Move方法不仅可以挪动图片框,而且还可以变更该图片框的大小,同时也会变更该图片框有关属性的值。 6. “A=B=C是一个合法的Visual Basic语句。 O 7. 当在一个简洁组合框的文本框中输入一个它的列表框中没有的条目时,组合框会自动把这一条目添加到它的列表框中。 O 8. Visual Basic程序的运行可以从 Main过程启动,也可以从某个窗体启动。 9. 在图片框中放置的控件既可以在该图片框内挪动,也可以移出该图片框外。O 10. 对于文件系统控件,当驱动器控件Drivel中的驱动器符变更时,文件夹列表控件Dir1中显示的文件夹也作相应的变更,可以在Drive1中的Change事务中运用如下嘱咐。Dir1. Path Drive1. Drive 11. 滚动条控件可作为用户输入数据的一种方法。 12. 单项选择按钮控件和复选框控件都具有Value属性,它们的作用完全一样。 O 13. 静态变量是一种部分变量,当原过程再次被执行时,静态变量的初值是上一次过程调用后的值。 14. Visual Basic供应的几种标准坐标系统的原点都是在绘图区域的左上角,假设要把坐标原点放在其他位置,那么需运用自定义坐标系统。 15注释语句REM可自成一语句。 16. 用鼠标选中某菜单控件时,触发Click事务;而用键盘选中该菜单控件时,触发 KeyPress O17. 组合框兼有文本框和列表框两者的功能,用户可以通过键人文本或选择列表中的工程来进展选择。 18. 当定时器控件的Interval属性值设置为0时,会连绵起伏地激发Timer事务。O 19执行程序 x=0:for I=2 to 10 step 2:x=x+10:next I后x的值为0。 2.句“FontName="宋体" 与“Form1.FontName="宋体" 的作用完全一样,无一例外。 O21局变量只能在窗体的通用区内用Public或global定义。 O 22. 在盘驱动器列表框Drivel的Change事务过程中,代码Dirl. PathDrivel . Drive的作用是:当Drivel的驱动器变更时,Dirl的书目列表随不同驱动器作相应变更。 23直到型循环至少能执行一次循环体。 24. Variant是一种特别的数据类型,Variant类型变量可以存储除定长字符串数据和自定义类型外的全部系统定义类型的数据。Variant类型变量还可具有Empty、Error和Null等特别值。 25. 假设一个菜单项的 Visible属性为False,那么它的子菜单也不会显示。 26.运行程序后在同一窗体上不行能同时选中两个单项选择钮。 O 27. 窗体的 Enabled属性值为 False时,该窗体上的按钮、文本框等控件就不会对用户的操作做出反响。 28定时器的interval属性值为0时,不会发生timer事务。 29. 框架控件和形态控件都不能响应用户的鼠标的单击事务。 O 30. 在一个窗体的代码中不能运用Unload语句来卸载本窗体,即一个窗体只能由其他窗体卸载。 O 31挪动图片框时,以该图片框为载体的各控件的Left 和 Top属性值不变。 二单项选择题32. 组合框的Change 事务在以下那种状况下发生?( C )A、在程序变更控件的大小时发生 B、用户在下拉列表中变更选项时发生C、用户在编辑文本区内容时发生 D、当程序变更组合框的Style属性时发生33. 为了使标签框的中的文字能自动折行,必需同时设置下面 两个属性为True。 D A、Caption和AutoSize B、AutoSize和Aligment C、Visible 和Enable D、AutoSize 和WordWarp34.假设渴望文件列表框只显示可执行文件,应当修改 B 属性。A、Pattern B、Filter C、Path D、35.为了使某个嘱咐按钮处于不行用状态,应当设置该嘱咐按钮的 属性。 B A、Default B、Enabled C、Cancel D、TabIndex36.通用对话框控件的返回值表示所选择文件的 B 。A、途径名 B、全名 C、文件主名 D、文件扩展名37.关于单项选择按钮和复选框,以下说法正确的选项是:( C )A、单项选择按钮和复选框的Value属性值可能是0或1B、同一窗体上的单项选择按钮只能有一个处于选中状态C、复选框不支持DblClick事务D、单项选择按钮选中状态的变更只能由用户进展,而不能由程序设置38.以下控件中哪个控件没有Change事务( D ) A、滚动条 B、书目列表框 C、标签 D、单项选择按钮39.菜单项显示分隔线是通过设置 A 属性来实现的。A、Caption B、Visible C、Checked D、Enabled 40.运行时组合框控件Comb1中所选择的表项,可以表示为 C 。A、Comb1.Text B、Comb1.List D、41.要使Shape控件以实心方式填充,应当设置其 B 属性。A、FillColor B、FillStyle C、BackStyle D、Shape42.向文本框中输入一个字符,以下 事务不会发生。 C A、Change B、KeyPress C、GotFocus D、KeyDown43.下面关于框架、复选框和单项选择钮的表达,正确的选项是 。 B A、框架没有Caption属性,而复选框和单项选择钮都有Caption属性 B、一个框架中的复选框有可以多个被选中C、一个窗体中单项选择钮有且只有一个可以被选中A、 可以把窗体中已存在的单项选择钮拖到框架中,成为框架中的一员44.用户在窗体上单击时,将先后触发该窗体的( D )A、MouseDown事务、Click事务、MouseMove事务、MouseUp事务B、Click事务、MouseDown事务 、MouseUp事务、MouseMove事务C、MouseDown事务、Click事务、MouseUp事务 、MouseMove事务D、MouseDown事务 、MouseUp事务、 Click事务、 MouseMove事务45.下面 方法不属于列表框和组合框。 A A、Cls B、AddItem C、GetFocus D、RemoveItem46.在图片框控件Picture1上坐标(x,y)处画一个绿色点,写作( D ) 。 A、Pset(x,y),Rgb(0,255,0) B、Picture1.Pset(x,y),Green C、Pset(x,y),vbGreen D、Picture1.Pset(x,y),vbGreen 47.下面关于滚动条和计时器控件的表达,其中错误的选项是 。 B A、当滚动条的Value值变更时,发生Change事务B、当拖动滚动条时,释放鼠标时发生Scroll事务C、计时器控件在运行时是不行见的D、计时器和滚动条控件都有Enable属性48.单击滚动条两端的任一个滚动箭头,将触发该滚动条的 ( C ) 事务。A、Scroll B、KeyDown C、Change D、Dragover49.设置某子菜单项的Caption标题属性为“画图&D,ShortCut快捷键属性为“Ctrl+L。启开工程时,下面 不会触发该子菜单的Click事务。 D A、翻开主菜单,按D键 B、干脆按Ctrl+L 键C、用鼠标单击该子菜单项 D、翻开主菜单,按Alt+D50.要变更控件的宽度,应修改该控件的 ( C ) 属性。A、Top B、Left C、Width D、Height51.依次文件有三种翻开方式,下面 种不是。 A A、Random B、Input C、Output D、Append 52( C ) 对象不能作为控件的容器。A、Form B、PictureBox C、Shape D、Frame 53. 将嘱咐按钮Command1设置为不行见,应修改嘱咐按钮的 ( A ) 属性。A、Visible B、Value C、Caption D、Enabled54以下数据类型中,占用内存最小的是( B ) 。A、Boolean B、Byte C、Integer D、Single55. ( D ) 对象具有Clear方法。A、图片框 B、窗体 C、复选框 D、列表框56一个对象可以执行的动作和可被对象识别的动作分别称为( B ) 。A、事务、方法 B、方法、事务 C、属性、方法 D、过程、事务57A、B、C中C最小,那么推断 A、B、C可否构成三角形 3条边长的逻辑表达式是( B )。A、A=B And B=C And C0 B、ACB And BCA And C0C、(AB=C Or AC=C) And C0 D、ABC And ABC And C058.将通用 对话框CommonDialog1的类型设置成“另存为对话框,可调用该控件的的 B 方法。A、ShowOpen B、ShowSave C、ShowColor D、ShowFont59下面( C )是日期型常量。A、“12/19/99” B、12/19/99 C、#12/19/99# D、12199960. 重新定义图片框控件的坐标系统,可承受该图片框的 A 方法。A、Scale B、ScaleX C、ScaleY D、SetFocus 61_D_ 对象不具有Caption属性。DA、Label B、Option C、Form D、Timer62Integer类型的变量可存的最大整数是( D ) 。A、255 B、256 C、32768 D、3276763要变更控件的宽度,应修改该控件的( C )属性。A、Top B、Left C、Width D、Height64.对于窗体级变量,以下说法错误的有: B A、所在窗体的各子程序都可以访问 B、其他窗体的子程序不能访问 C、所在窗体的子程序能访问用Private定义的窗体级变量 D、确定要在所在窗体的通用区内定义65在窗体Forml的Click事务过程中有以下语句: C “Label1. Caption“Visual Basic假设本语句执行之前,标签控件的Caption属性为默认值,那么标签控件的Name属性和Caption属性在执行本语句之前的值分别为 。 A、“Label 、 “Label B、“Labei1” 、 “Visual Basic C、“Label1” 、 “Label1” D、Caption 、 “Label66. 下面关于变量的作用域和生存周期的描绘正确的选项是( C )A、全局变量可在窗体的通用区内定义 B、窗体级变量与静态变量具有一样的作用域和生存周期C、同一过程中用“ Dim 定义的部分变量和用“ Static 定义的部分变量具有一样的作用域D、同一过程中用“ Dim 定义的部分变量和用“ Static 定义的部分变量具有一样的生存周期67一个菜单项是不是一个分隔条,由( B ) 属性确定。A、Name名称 B、Caption CEnabled D、Visible68.Integer类型的变量可存的最大整数是 。 D A、255 B、256 C、32768 D、3276769下面( B )对象在运行时确定不行见。A、Line B、Timer C、Text D、Option70 形态控件所显示的图形不行能是( D )。A、圆 B、椭圆 C、圆角正方形 D、等边三角形 71以下( A )方式翻开的文件只能读不能写。A、Input B、Output C、Random D、Append72. 对象不具有Caption属性。 D A、Label B、Option C、Form D、Timer73由 For k35 TO 0 Step 3: Next k 循环语句限制的循环次数是( A ) A、0 B、12 C、-11 D、-1074.以下( A )方式翻开的文件只能读不能写。 A、Input B、Output C、Random D、Append75.由 For k35 TO 0 Step 3: Next k 循环语句限制的循环次数是( A )A、0 B、12 C、-11 D、-1076.想要变更控件在窗体中的左右位置,可以修改该控件的( B )属性。A、Top B、Left C、Width D、Right77.要在文件列表框中显示不同类型的文件可以通过设置( A )属性A、Pattern B、Path C、 D、ListIndex78.窗体的DrawWidth属性值设置为大于1时,以下( C )属性会失去作用A、Backcolor B、FillStyle C、Drawstyle D、Fillcolor79假设在图片框上运用绘图方法绘制一个圆,那么图片框的( A )属性不会对该圆的外观产生影响。A、Backcolor B、ForeColor C、DrawWidth D、Drawstyle80. 菜单编辑器中呈现以下状态,程序运行后以下( D )操作无法执行“复制功能A、 翻开“编辑菜单后按下“CB、干脆按下 Ctrl+C C、鼠标单击“复制菜单项D、 “ Alt+E “ Alt+C 三填空题81VB的字符串运算符有 _+_ 和 & 两种,其中运算符两边的表达式类型必需为字符型的运算符是_ &_ 。 82. 设x=6,y=4,z=7,下面表达式的值是true _x>y and y>x-z or x<y and not 2*y >z 83. 设n是一个自然数,那么求n的位数L的表达式可以是L= _ len(str(n)-1_。例如:假设n=12345,那么L=584. 在翻开某窗体时,初始化该窗体中的各控件,应选用load事务。85滚动条的当前值用 _ value _表示。 86. 设x为大于零的实数,那么大于x的最小奇数的Visual Basic表达式是(Int(x)+1)2)*2+l或Fix(x)+12*2+1。87. 在代码设计中,为了给某控件的BackColor属性赋一个颜色值,可以有三种方法获得颜色,它们分别是QBColor()函数、颜色常数和_ RGB( ) 函数_。88. a1和a2之中有且只有一个与a3的值相等,相应的Visual Basic逻辑表达式是a1=a3 Xor a2=a3或a1=a3 And a<>a3 Or a1<>a3 And a2=a3 。89. 以图片框Picture1的中心为圆心,以1000为半径在Picture1上画一个圆的方法是 _ picture1.circle (picture1.width/2,picture1.height/2),1000_ 。90. 设init的初值为10 ,那么由以下循环语句限制的循环次数是 6 。Do While init >=5Init=init-1Loop91. 窗体的 Enabled属性值为_ False _时,该窗体上的按钮、文本框等控件就不会对用户的操作做出反响。92. 在Visual Basic中,变量从它的作用范围来看。可分为全局变量、模块级变量和部分变量3种。93Visual Basic供应了对文件的三种存取方式,分别是 _ Input _ 、_ output _ 和 _ Append _ 。 94. 8语句Picture1.Circle(800,1000),500的含义是以图片框Picture1中的800,1000为圆心,以500为半径画一个圆。95.用Visual Basic开发应用程序的"三步曲"是:_界面设计_、_属性设置_和_代码设计_。 96在VB中,假设要产生一消息框,那么可用函数_ msgbox _ 来实现。 97.n为一个三位正整数,写出求n中十位数的Visual Basic表达式_(n10) mod 10_。98假设要获得用户在驱动器列表控件中所选择的驱动器,可通过访问该对象的_ Drive _ 属性来实现。99. 表达式4.82*7 Mod 3.14的运行结果是_2_。100. 书目列表框DirListBox中,当前文件夹对应工程的ListIndex属性值为_ -1 _。101利用Line方法可以画 _直线_ 、_矩形_ 和 _实心矩形_ 。102Visual Basic的菜单可分为 _下拉式_ 菜单和 _弹出式_ 菜单两种。 103.在Visual Basic中,_文件列表框_和 _通用对对话框_控件具有属性。104在VB中,用于产生输入对话框的函数是_ Inputbox _,其返回值类型为_字符型_ ,假设要利用该函数接收数值型的数据,那么可利用_ Val _ 函数对其返回值进展转换而得到。 105.用PictureBox和Image控件装载图形图像时,为了使图形图像与所在的控件大小相等,可以变更106.形态的Shape属性可以取_6_个值,分别代表各种不同的形态。 107.假设在图片框上运用绘图方法绘制一个圆,那么图片框的_ Backcolor _属性不会对该圆的外观产生影响。PictureBox的_ stretch _ 属性和Image的_ autosize _ 属性。108 求与之积除以的余数,用 VB表达式为 _mod(a*b)/c) _ 。109. Visual Basic常见控件中可以作为其他控件容器的控件有_框架_ 和_图片框_ 。110Visual Basic的菜单可在_菜单编辑器_中设计完成。假设要使某项菜单在运行时不行见,可设置该菜单对象的_Visible _ 属性为False来实现;假设要使某项菜单在运行时失效,那么应设置菜单项对象_ Enabled _属性为False。111. 在代码设计中,为了使定时器Timer1能处于关闭状态,使系统不响应它的Timer()事务,可以设置Timer1.Enabled=False 或_ timer1.Interval=0_。112. 表达式Chr(Asc(“R)- Asc(“A) +Asc(“a)的值是_ r _。113Print Mid$(Str$(-1234),3,2)的结果为_23 _ 。程序阅读题四、阅读以下程序,写出运行结果。1、 程序1Private Sub Command1_Click() Dim x As Integer, s As Integer x = Val(InputBox("请输入一个正整数=") If x < 5 Then s = s * x Else s = s + x End If text1.Text = "s=" + Str(s)End Sub程序运行时连续3次单击Command1,且设输入的数是5,2和4时,分别写出文本框Text1.Text的值。2、 程序2 Private Sub Form_Click() Form1.Cls w = 3 For k = 2 To 6 Step 2 Form1.Print "w=" w, "k=" k w = w + 1 Next k Form1.Print "w=" w, "k=" kEnd Sub写出程序运行时单击窗体后,Form1上的输出结果。3、 程序3 Private Sub Form_Click() Dim x As String Dim i As Integer, n As Integer Form1.Cls x = "ABCDEFGHKL" n = Len(x) For i = n To 1 Step -2 Form1.Print Tab(20 - i); Mid(x, i, 1) Next iEnd Sub写出程序运行时单击窗体后,Form1上的输出结果。4、 程序4 Dim a As Integer, y As Integer Private Sub Form_Load() Open "c:a1.dat" For Output As #1 Close #1End SubPrivate Sub Command1_Click() Open "c:a1.dat" For Append As #1 Call aa(5) y = y + a Print #1, "y=" y, "a=" a Close #1End SubSub aa(i As Integer) x = 1 Do Until x > i a = a + x x = x + 3 LoopEnd Sub写出程序运行时连续3次单击Command1后,a1.dat文件的最终结果。程序阅读题答案 :1. s=5s=10s=402. w=3 k=2w=4 k=4w=5 k=6w=6 k=83. L H F D B 4. y=5 a=5y=15 a=10y=30 a=15 五.程序填空题细致阅读以下各小题的程序说明和相应的程序,在每题供应的假设干可选答案中,选择一个正确答案。1. 【程序说明】本程序求3100之间的全部素数质数并统计个数,同时将这些素数从小到大依次写入依次文件 e:dataout.txt,素数的个数显示在窗体Form1上。【程序】Private Sub Command1_Click() Dim count As Integer, flag As Boolean Dim ti As Integer, t2 As Integer 1 count = 0 For ti = 3 To 100 flag = True For t2 = 2 To Int(Sqr(t1) If 2 Then flag False Next t2 3 count = count + 1 Write #1, t1 End If Next t1 4 Close #1End Sub1A、Open e:dataout.txt For Output As #1 B、Open e:dataout.txt For Input As #1 C、Open e:dataout.txt For Output As #2 D、Open e:dataout.txt For Output As #1(2) A、t2t1=0 B、t1 Mod t2=0 C、t1t2=0 D、t2 Mod t1=03A、If flag Then B、If t2>t1 Then C、If t1>t2 Then D、If t2>int(sqr(t1) Then(4) A、 Forml.Print"素数个数:" ; count B、 Print #l "素数个数:"Count C、 Form1.Print"素数个数:"; count D、 Form1.Print"素数个数:": Count2. 程序说明由输入对话框输入n设n为大于零且小于30的自然数,计算以下表达式并在标签框Label1上显示。/(*2)+1/(2*3)+1/(3*4)+1/(n*(n+1)【程序】Private Sub Form_Click()Dim n As Integer, sum As Double, k As IntegerDo 5 n = Val(InputBox("n=", "请重输")Loopsum = 0 6Do k = k + 1 sum= 7Loop Until k >= nLabel1.Caption = "Sum" + Str(sum)End Sub(5) A、While n<=O or n>=30 B、While n<=O And n>=30 C、Until n>0 Or n< 30 D、Until n> =0 and n<= 30 (6) A、k=2 B、k=1 C、K=-1 D、k=0(7) A、1/(k*(k+1) B、l/(k-1)*k C、sum+1/(k*(k+1) D、sum+1/k*(k+1)3. 【程序说明】本程序用于处理文本框Textl.Text中的内容,假设文本框中有偶数个字符。要求将文本框从头尾至中间依次各取字符,组成一个新的字符串str2,并在窗体上输出。如:Textl.Text"12345678 ",那么 Str2"18273645 "【程序】Private Sub Form_Click()Dim Str1 As String, Str2 As StringStr1 = TeXt1.TextStr2 = ""m = 0Do 8 Str2= Str2+ 9 Str2= Str2+ 10 m = m + lLoopforml.Print Str2End Sub(8) A、While m C、Until m> Len(Str1)/2 D、Until m< Len(Str1)/2(9) A、Mid(str1,m,1) B、 Mid(str1,len(str1)-m,1) C、Midm,Strl,l D、MidStr1,m+l,1(10) A、Mid(str1,len(str1)-m+1,1) B、Mid(str1,m,1) C、Mid(str1,len(str1)-m,1) D、 Mid(str1,len(str1)-m+1,1)程序填空题答案:DBACADCADC六、 程序填空题 1. 下面是一个求n!的自定义函数代码。Private Function JC(n As Integer) As LongDim Result As LongIf p = 1 Then Result = 1Else Result = 1 End IfJC = 2 End Function 2. 下面的程序完成以下功能:单击窗体上的“测试Command1按钮,出现一个输入框,要求输入一串字符,将该字符串中的非字母字符删除后,显示在窗体中的一个文本框Text1中。Private Sub Command1_Click()Dim St1, St2 As StringDim Ch As 3 Dim L As IntegerSt1 = InputBox("请输入一串字符", "字符串输入")L = 4 St2 = ""For i = 1 To L Ch = Mid(St1, i, 1)If (Ch > "A" And 5 ) Or (Ch > "a" And Ch < "z") Then St2 = St2 + ChEnd IfNext iText1.Text = 6 End Sub3. 下面的程序完成以下功能:窗体上有两个嘱咐按钮“产生Command1和“排序Command2。单击“产生按钮时,随机产生10个1,20范围内的整数放在数组A中,并在窗体上输出。单击“排序按钮时,用选择法排序这10个数并输出。Dim A(10) As IntegerPrivate Sub Command1_Click()Dim i As IntegerRandomizePrint "排序前的数列:"For i = 1 To 10 A(i) = 7 Print Str(A(i) + " "Next iPrintEnd SubPrivate Sub Command2_Click()Dim i, j, Min, Temp As IntegerPrintPrint "选择排序后的数列:"For i = 1 To 9Min = A(i)For j = 8 To 10 If A(j) < Min Then Temp = A(j) A(j) = 9 Min = Temp End IfNext jA(i) = Min10 For i = 1 To 10 Print Str(A(i) + " "Next iPrintEnd Sub程序填空题答案 :(1) n*Jc(n-1) (2) result (3) string (4) len(str) (5) ch<"z" (6) st2 (7) int(Rnd*20)+1 (8) I+1 (9) min (10) next i七、程序填空题1. 程序说明:利用一个计时器,一个标签框和两个嘱咐按钮制作一个动态秒表, 单击“完毕嘱咐按钮,秒表完毕计时,并在标签框显示运行时间,如“运行 了0小时2分10秒。假设对象的属性都在程序代码中设定 一个动态秒 程序代码如下Dim x As LongDim h As Integer, m As Integer, s As IntegerPrivate Sub Form_Load() Form1. Caption = "动态秒表(小时:分:秒)" Command1. Caption = "开始&S" Comma