19VB程序改错题收集(答案在后面)
- 格式:doc
- 大小:310.00 KB
- 文档页数:8
1.程序的功能是:单击命令按钮“输出”,在图片框Picture1中输出费波那契数列的前20项项值,要求按区输出,每行输出4个项值。
程序中有两处错误,请修改程序并运行,直到得出正确结果。
注意:程序中的修改行就在注释行:'**********found*************' '请不要删除该行'的下面,请不要修改程序中的其他部分。
最后把修改后的文件按原来文件名存盘。
第1个出错位置:For i=3 to 20第2个出错位置:If i Mod 4=0 then Picture1.PrintPrivate Sub Command1_Click()Dim f(40) As LongDim i As IntegerPicture1.Clsf(1) = 0f(2) = 1Picture1.Print f(1), f(2),'**********found*************' '请不要删除该行'For i = 1 To 40For i=3 to 20f(i) = f(i - 1) + f(i - 2)Picture1.Print f(i),'**********found*************' '请不要删除该行'If i Mod 4 = 0 Then Picture.PrintIf i mod 4=0 then picture1.printNext iEnd Sub2. 程序的功能是:程序运行时,单击“输出”按钮,产生10个[0,99]之间的随机整数存入数组A中,并按照相反的顺序输出在窗体上。
程序中有两处错误,请修改程序并运行,直到得出正确结果。
第1个出错位置:A(i)=Int(Rnd*100+0) p50第2个出错位置:Print A(11-i);Private Sub Command1_Click()RandomizeDim A(10), I As IntegerForm1.ClsFor I = 1 To 10'*********found******** '请不要删除该行A(I) = Int(Rnd * 99) A(i)=Int(Rnd*100+0)Print A(I);Next IPrintFor I = 1 To 10'*********found******** '请不要删除该行Print A(I); Print A(11-i) (注意答案中间无;)Next IEnd Sub3. 在考生文件夹下有一个工程文件Modi1.vbp,相应的窗体文件为Modi1.frm,此外还有一个名为Modiin.dat的文本文件,其内容如下:32 43 76 58 28 12 98 57 31 42 53 64 75 86 97 13 24 35 46 57 68 79 80 59 37程序运行后,单击窗体,将把文件Modiin.dat中的数据输入到二维数组Mat中,在窗体上按5行5列的矩阵形式显示出来,然后交换矩阵第一行和第三行的数据,并在窗体上输出交换后的矩阵。
VB程序改错四、程序改错共7题第1题题号:7'【题目】从10个各不相同的正整数中,剔除若干个数。
使得保留下来的数中,' 任意两个数的和都不是平方数'(所谓平方数就是该数等于某一个数的平方,例如4就是一个平方数)。
Option ExplicitOption Base 1Private Sub Command1_Click()Dim a(10) As Integer, i As Integer, j As Integer, p As Integer, k As Integer'**********FOUND**********Do While p <= 10k = Int(20 * Rnd) + 1For j = 1 To p'**********FOUND**********If k = a(j) Then Exit DoNext jIf j > p Thenp = p + 1a(p) = kText1 = Text1 & Str(k)End IfLoopCall delete(a, p)For i = 1 To pText2 = Text2 & Str(a(i))Next iEnd SubPrivate Sub delete(a() As Integer, p As Integer)Dim idx As Integer, j As Integer, sum As Integer idx = 2Do While idx < pFor j = 1 To idx - 1sum = a(idx) + a(j)If Int(Sqr(sum)) = Sqr(sum) Then Exit For Next j'**********FOUND**********If j > idx - 1 Thena(idx) = a(p)p = p - 1Elseidx = idx + 1End IfLoopEnd Sub答案:=======(答案1)=======Do While p < 10=======(答案2)=======If k = a(j) Then Exit For=======(答案3)=======If j <= idx - 1 Then第2题题号:8'【题目】本程序的功能是生成一组(10个)两位的互质数。
VB简介1、在以下有关对象属性的叙述中,不正确的是___________。
A、一个对象的属性可分为外观、行为若干类B、不同属性可能具有不同的数据类型C、一个对象的所有属性都可在属性窗口的列表中进行设置D、属性窗口中的属性列表既可按字母排序也可按类别排序2、Visual Basic中最基本的对象是___________,它是应用程序的基石,也是其他控件的容器。
A、文本框B、命令按钮C、窗体D、标签3、有程序代码“Text1.Text="Visual Basic"”,其中的Text1、Text和“Visual Basic”分别代表___________。
A、对象、值、属性B、对象、方法、属性C、对象、属性、值D、属性、对象、值4、用窗体的___________属性来设置窗体的标题。
A、CaptionB、StyleC、TextD、Name5、窗体上有一个文本框控件Text1,假设已存在三个整型变量a、b、c,且变量a的值为5,变量b的值为7,变量c的值为12。
以下的___________语句可以使文本框内显示的内容为:5+7=12。
A、Text1.Text = a + b + cB、Text1.Text = "a+b=c"C、Text1 = a & "+" & b & "=" & cD、Text1 = "a" & "+" & "b" & "=" & "c"6、如果在窗体上有命令按钮OK,在代码编辑窗口有与之对应的Cmd_Click()事件,则命令按钮的名称属性和Caption属性分别为_________。
A、OK、CmdB、Cmd、OKC、CmdOK、OKD、OK、CmdOK7、窗体Form1的名称属性是frm,它的Load事件过程名为___________。
1.在考生文件夹下有一个工程文件Modi.vbp,相应的窗体文件为Modi.frm。
其功能是:产生30个[0,90]的随机整数,放入一个数组中,然后输出其中的最大值。
程序运行后,单击命令按钮,可求出数组中的最大值,并在窗体上显示。
运行界面请参阅附图。
在窗体的代码窗口中,已给出了部分程序,程序中有两处错误,请修改程序并运行,直到得出正确结果。
注意:程序中的修改位置就在注释行:’**********found*************’’请不要删除该行’的下面一行中,请不要改动程序中的其他部分。
最后把修改后的文件按原来文件名存盘,提交程序改错题文档。
VERSION 5.00Begin VB.Form Form1Caption = "Form1"ClientHeight = 2100ClientLeft = 1905ClientTop = 1875ClientWidth = 3660LinkTopic = "Form1"ScaleHeight = 2100ScaleWidth = 3660Begin mandButton Command1Caption = "输出最大值"Height = 375Left = 960TabIndex = 0Top = 1320Width = 1575EndEndAttribute VB_Name = "Form1"Attribute VB_GlobalNameSpace = FalseAttribute VB_Creatable = FalseAttribute VB_PredeclaredId = TrueAttribute VB_Exposed = FalseOption Base 1Private Sub Command1_Click()Dim arrN(30) As IntegerDim Max As IntegerRandomizeForm1.ClsFor i = 1 To 30’**********found*************’’请不要删除该行’arrN(i) = Int(Rnd * 51) 91Print Format(arrN(i),"@@@@@@");If i Mod 6 =0 Then PrintNext i’**********found*************’’请不要删除该行’Max = arrN(0) 1For i = 2 To 30If Max<arrN(i) ThenMax = arrN(i)End IfNext iPrint "Max=";Max2. 在考生文件夹下有一个工程文件Modi.vbp,相应的窗体文件为Modi.frm。
vb第次考试复习题单选判断程序填空改错练习————————————————————————————————作者:————————————————————————————————日期:一、判断共19题(共计19分)第1题(1.0分)题号:684在窗体的form_load事件过程里定义的变量是局部变量。
第2题(1.0分)题号:380VB规定窗体文件的扩展名是 .vbp。
3题(1.0分)题号:681对于动态数组,在过程中可多次使用redim语句改变数组的大小。
第4题(1.0分)题号:285所有的控件在程序运行以后都是可见的。
第5题(1.0分)题号:677通常用show方法来显示通用对话框第6题(1.0分)题号:683控件数组中的各个元素由caption属性区分。
第7题(1.0分)题号:680通用对话框控件在运行的时候,是不可见的。
第8题(1.0分)题号:361设A=3,B=4,C=5,D=6,则表达式A>B And C<=D Or 2* A>C的值是 False。
第9题(1.0分)题号:313“菜单编辑器”中至少要填“名称”和“标题”这两个框,才能真确完成菜单栏的设计。
第10题(1.0分)题号:325VB若同一个工程有许多窗体,可以指定任一窗体为启始窗体。
第11题(1.0分)题号:335通过改变属性窗口中的Name属性,可以改变窗体上显示的标题。
第12题(1.0分)题号:324如果一个菜单项的Visible属性为False,则它的子菜单也不会显示。
第13题(1.0分)题号:678鼠标mousedown事件可以返回一个参数button用于判断用户按下的是鼠标的左键、右键、还是滑轮。
第14题(1.0分)题号:254有的对象属性既可在属性窗口中设定又可在程序代码中设定。
第15题(1.0分)题号:686时钟控件的interval属性的单位是毫秒。
第16题(1.0分)题号:248对象的可见性用enabled属性设置,可用性用visible属性设置。
(本试卷完成时间 60分钟)[考试须知]1.改错题界面不作要求,主要用来调试程序,题目中有参考界面,则仅作参考;2.考试结束后,文件须存放在指定位置,否则不予评分;3.程序代码书写应成锯齿形。
一、改错题(14分)[题目]随机生成30个三位正整数显示在列表框List1中,并从中找出所有回文数显示在多行文本框Text1中。
Option ExplicitOption Base 1Private Sub Command1_Click()Dim i As IntegerDim A(30) As IntegerFor i = 1 To 30A(i) = Int(Rnd * 900 + 100)List1.AddItem A(i)Next iFor i = 1 To 30If judge(A) ThenText1 = Text1 & CStr(A(i)) & Chr(13) & Chr(10)End IfNext iEnd SubPrivate Function judge(ByVal x As Integer) As BooleanDim S As String, i As IntegerS = Str(x)For i = 1 To Len(S) \ 2If Mid(S, i, 1) = Mid(S, Len(S) - i + 1, 1) Then Exit ForNext iIf i > Len(S) \ 2 Thenjudge = TrueElsejudge = FalseEnd IfEnd Function[要求]1.新建工程,Copy上述代码,改正程序中的错误;2.改错时,不得增加或删除语句,但可适当调整语句位置;3.按要求保存文件,上传窗体文件……G1.frm。
(本试卷完成时间 60分钟)[考试须知]1.改错题界面不作要求,主要用来调试程序,题目中有参考界面,则仅作参考;2.考试结束后,文件须存放在指定位置,否则不予评分;3.程序代码书写应成锯齿形。
第57题(1.0分)题号:465'------------------------------------------------'【程序改错】'------------------------------------------------'题目:用InputBox函数输入一个字符串,编写程序按与' 输入的字符相反的次序用Msgbox函数输出这个字' 符串。
如输入字符串为"abcdefgh",则输出为"h' gfedcba",输出效果如图1。
'------------------------------------------------ Option ExplicitPrivate Sub Command1_Click()Dim pristr As String, outstr As StringDim i As Integerpristr = InputBox("please input a string")'**********FOUND**********For i = 0 To Len(pristr)'**********FOUND**********outstr = outstr + Mid(pristr, Len(pristr) - i) Next i'**********FOUND**********MsgBox outstr, , "The Output Result "End Sub答案:=======(答案1)=======For i = 0 To Len(pristr) - 1=========或=========For i = 0 To -1+Len(pristr)=======(答案2)=======outstr = outstr + Mid(pristr, Len(pristr) - i, 1)=========或=========outstr = Mid(pristr, Len(pristr) - i, 1)+outstr=======(答案3)=======MsgBox outstr, vbQuestion, "The Output Result "第59题(1.0分)题号:147'------------------------------------------------'【程序改错】'------------------------------------------------'题目:下面的程序用来产生并输出图示的杨辉三角。
属性设置:将Timer1的interVal属性设置为:10000,Timer2的interVal属性设置为:1000Timer1_Timerelse*原语句Label1.Visible=False改为Label1.Visible=TrueTimer2_Timer*原语句Label2.Caption = Timer()改为 Label2.Caption = Time()填空Tk248.Frm( 1 ) Val(m) ( 2 ) m Mod n改错Gc315.Frm属性设置:将Timer1的interVal属性设置为:0C1_Click*原语句Timer1.Enabled = False 改为 Timer1.InterVal=100Timer1_Timer*原语句If P1.Top > P2.Top + P2.Left Then 改为 If P1.Top > P2.Top + P2.Height Then填空Tk315.Frm( 1 ) Finish ( 2 ) <改错Gc316.Frm属性设置:将File1的Pattern属性设置为:*.bmp,将Image1的Stretch属性设置为:TrueDir1_Change*原语句 File1.Path = Dir1.Drive 改为 File1.Path = Dir1.PathFile1_Click*原语句 Image1.Picture = fname 改为 Image1.Picture = LoadPicture(fname)填空Tk316.Frm( 1 ) a(j - 1) + a(j) ( 2 ) Picture1.Print改错Gc317.Frm属性设置:将Timer1的InterVal属性设置为:100,将Label1的Caption属性设置为:上机测试Command2_Click*原语句 Timer1.Timer 改为 Timer1_TimerTimer1_Timer*原语句 ElseIf Label1.Left > 0 Then 改为 ElseIf Label1.Left < 0 Then填空Tk317.Frm( 1 ) Len(Text1.Text) ( 2 ) a(j) + 1改错Gc318.Frm属性设置:将Hscroll1的Max、Min属性分别设置为:20、10Command1_Click*原语句RGB(Text1.Text, Text2.Text, Text3.Text) 改为RGB(Val(Text1.Text), Val(Text2.Text), Val(Text3.Text))HScroll1_Change()*原语句Label1.FontSize = HScroll1 改为 Label1.FontSize = HScroll1.Value填空Tk318.Frm( 1 ) i = 1 To 9 ( 2 ) Data(i) > Data(j)改错Gc319.Frm属性设置:将Form1的WindowState属性设置为:2,Command1的Caption 属性设置为:开始计算Command1_Click*原语句If j > 10 Then Exit Do 改为 If j = 10 Then Exit Do*原语句i = i - 1 改为 i = i + 1填空Tk319.Frm( 1 ) 5 ( 2 ) i属性设置:将Option3的Caption属性设置为: *,将Option3的ToolTipText属性设置为:乘法Option1_Click*原语句Text3.Text = Text1.Text + Text2.Text 改为Text3.Text = val(Text1.Text) + Val(Text2.Text) Option3_Click*原语句Text3.Text = Integer(Text1.Text * Text2.Text) 改为Text3.Text = Int (Text1.Text * Text2.Text)填空Tk320.Frm( 1 ) b ^ 2 - 4 * a * c ( 2 )ElseIf d = 0改错Gc334.Frm属性设置:将Text1的Text属性设置为:空值,将Command1的Caotion属性设置为:增加List1_Click*原语句List2.AddItem List1.ListIndex 改为List2.AddItem List1.TextList2_Click*原语句List2.RemoveItem List2.List(List2.ListIndex) 改为List2.RemoveItem List2.ListIndex填空Tk334.Frm( 1 ) s(Max) < s(j) ( 2 )s(n) = Text1.Text改错Gc335.Frm属性设置:将Timer1的InterVal属性设置为:1000,将窗体的Caotion属性设置为:倒计时程序Timer1_Timer*原语句Text1.Text = Format(Now, "SS:HH:MM")改为Text1.Text = Format(Now, "HH:MM:SS")Timer2_Timer*原语句Timer1.Interval = 0 改为Timer1.Enabled = False填空Tk335.Frm( 1 )Num(i) = Int(Rnd * 91 + 10) ( 2 )IsPrime(Num(i))改错Gc372.FrmSub swap1过程*原语句swap1(x As Integer, y As Integer)改为swap1(ByVal x As Integer, ByVal y As Integer) Sub swap2过程*原语句t = m: n = m: n = t 改为t = m: m = n: n = t填空Tk372.Frm( 1 )fibo(i); ( 2 )fibo(n - 1) + fibo(n - 2)改错Gc373.FrmForm_Click*原语句Else下面的nCount = nCount + 1 改为nCount = 1*原语句第二个End If 改为 Next n填空Tk373.Frm( 1 )a1 ( 2 )ncount -1改错Gc402.FrmForm_Click*原语句For i = 1 To n 改为For i = 1 To n-1*原语句sum = 1 / kk 改为 sum = sum + 1 / kk填空Tk402.Frm( 1 )Rnd*201+300 ( 2 )s = s + a(i)改错Gc403.FrmCommand1_Click*原语句((a + c>b) And (b>0)) Or ((c + b>a) 改为((a + c>b) And (b > 0)) And ((c + b>a)*原语句Abs(s * (s - a) * (s - b) * (s - c)) 改为 Sqr(s * (s - a) * (s - b) * (s - c))填空Tk403.Frm( 1 ) ss = Str( i ) ( 2 )a^3 + b^3 + c^3 = i属性设置:将Label1的BorderStyle属性设置为:1,将时钟的InterVal属性设置为:500Command2_Click*原语句Timer1.Enabled = True 改为Timer1.Enabled = FalseTimer1_Timer*原语句Label1.Caption = Timer() 改为 Label1.Caption = Time()填空Tk457.Frm( 1 ) n - i ( 2 )i < n改错Gc458.FrmC1_Click*原语句If x > 100 And x < 0 Then 改为If x > 100 Or x < 0 Then*原语句Label3.Caption = "该生成绩" 改为 Label3.Caption = Strtemp填空Tk458.Frm( 1 ) S ( 2 )result改错Gc481.FrmForm_Click*原语句f(i) = f(i) + f(i - 1) 改为f(i) = f(i-2) + f(i - 1)*原语句If (i Mod 5) = 5 Then 改为 If (i Mod 5) = 0 Then填空Tk481.Frm属性设置:将Command1的Caption属性设置为:计算机,将窗体的Caption属性设置为:等级考试( 1 ) Form1.Caption ( 2 )temp改错Gc482.Frm属性设置:将Text1、Text2的Text属性设置为:空值;Command1、Command2的Caption属性分别设置为:华氏转摄氏、摄氏转华氏Command1_Click*原语句F = Text1.Value 改为F = Text1.TextCommand2_Click*原语句C = Text2.Value 改为 C = Text2.Text填空Tk482.Frm( 1 ) i ( 2 )0改错Gc509.Frm属性设置:Command1、Command2的Caption属性分别设置为:计算&S、结束&XCommand1_Click*原语句If Text1.Text = "" Then 改为If Text1.Text <> "" ThenCommand2_Click*原语句Exit 改为 End填空Tk509.Frm( 1 ) 100 ( 2 )True改错Gc510.Frm属性设置:Command1、Command2的Caption属性分别设置为:计算&S、结束&XCommand1_Click*原语句If Text1.Text = "" Then 改为If Text1.Text <> "" ThenCommand2_Click*原语句Exit 改为 End填空Tk510.Frm( 1 ) b^2 – 4 * a * c ( 2 )Sqr(abs(d))属性设置:Command1、Command2的Caption属性分别设置为:定义坐标系统&S、绘正弦曲线&X Command1_Click*原语句Form1.Scale (-8, 2)+(8, -2) 改为Form1.Scale (-8, 2)-(8, -2)Command2_Click*原语句x = 1: y = Sin(i) 改为 x = i: y = Sin(i)填空Tk535.Frm( 1 ) num Mod 6 = 2 And num Mod 5 = 3 ( 2 )Text1.SetFocus改错Gc536.FrmForm_Click*原语句arr(i) = 20 + 80 * Rnd(-1) 改为arr(i) = 20 + 80 * Rnd(1)*原语句s = s + arr(1) 改为 s = s + arr(i)填空Tk536.Frm( 1 ) a ^ 2 + b ^ 2 = c ^ 2 ( 2 )Text1.Text = n改错Gc561.FrmForm_Click*原语句sum = 0 改为sum = 1*原语句sum = 1 / kk 改为 sum = sum + kk填空Tk561.Frm( 1 ) rnd * 201 + 100 ( 2 )s + a(i)改错Gc562.Frm属性设置:Command1、Command2的Caption属性分别设置为:运行、清理Command1_Click*原语句List1.List i & "=" & Sqr(i) & "^2" 改为List1.AddItem Sqr(i) & "^2" Command2_Click*原语句Text1.Focus 改为 Text1.SetFocus填空Tk562.Frm( 1 ) P(I) + P(J) + P(K) = N ( 2 )Idx = Idx + 1改错Gc587.Frm属性设置:Command1的Caption属性设为:开始计数;Timer1的Interval属性设为:1000C1_Click*原语句 Timer1.Enabled = True 改为 T1.Enabled = TrueT1_Click*原语句Text1.Text = Text1.Text + 10 改为 Text1.Text = Text1.Text + 1填空Tk587.Frm( 1 ) 32 ( 2 )String(1, Asc(b) + n)改错Gc588.FrmCommand1_Click*原语句 Item = 0 改为 Item = 1*原语句 Sum = Sum + Item 改为 Sum = Sum + I/Item填空Tk588.Frm( 1 ) End ( 2 )Text1.Text = ""改错Gc613.Frm属性设置:Form1的Caption属性设为:个人爱好;Command11的Caption属性设为:显示Command1_Click*原语句 If Check2.Value = 0 改为 If Check2.Value = 1Command2_Click*原语句 Then s = Check3.Caption 改为 Then s = s + Check3.Caption填空Tk613.Frm( 1 ) x >= 0 ( 2 )x < aminCommand1_Click*原语句 n = 1 改为 n = 0*原语句Text1 = s 改为 Text1 = n填空Tk614.Frm( 1 ) i+1 ( 2 ) s改错Gc639.Frm属性设置:Forma1的Caption属性设为“书籍采购计划”,Command1、Command2的Nmame属性设为:cmdAdd 和cmdDeleteCommAdd_Click*原语句 lstBook.AddItem = txtBook.Text 改为 lstBook.AddItem txtBook.TextCmdDelete_Click*原语句If lstBook.ListIndex = -1 Then 改为 If lstBook.ListIndex > -1 Then填空Tk639.Frm( 1 ) Rnd * 4 + 1 ( 2 )"S(" & I & ")=" & S(I)改错Gc640.FrmCommand1_Click*原语句 s = s + i 改为 s = s + i^2或 s = s + i*iCommand2_Click*原语句Release Me 改为 Unload Me填空Tk640.Frm( 1 ) f * i ( 2 ) Unload改错Gc666.Frm属性设置:Form1的Caption属性设为:加法器;Label1的Caption属性设为:+Command1_Click*原语句 Timer1.Enabled = True 改为 T1.Enabled = TrueCommand2_Click*原语句Text3 = Text1 + Text2 改为 Text3 = Val(Text1) + Text2填空Tk666.Frm( 1 ) i \ 100 ( 2 )i - hundred * 100 - ten * 10改错Gc667.FrmCommand1_Click*原语句 m = 1 改为 m = 0*原语句n = n + m 改为 n = n + 1填空Tk667.Frm( 1 ) P * j ( 2 )S + P改错Gc692.Frm属性设置:Form1的Caption属性设为:字幕滚动;Command11的Caption属性设为:手动Command1_Click*原语句 Form1.Timer1.Enabled = True 改为 Form1.Timer1.Enabled = FalseCommand2_Click*原语句Else下面的 Form1.Timer1.Enabled = False 改为 Form1.Timer1.Enabled = True填空Tk692.Frm( 1 ) TOTAL = 0 ( 2 )Sqr(L * (L - A) * (L - B) * (L - C))改错Gc693.FrmCommand1_Click*原语句sum = sum + 1 / item 改为 sum = sum + i / item*原语句Text1.Text1 = Str(sum) 改为 Text1.Text = Str(sum)填空Tk693.Frm( 1 ) a(i) ( 2 )i = 5 To 1 Step -1属性设置:Form1的Caption属性设为:字幕放大;Timer1的InterVal属性设为:200 Command1_Click*原语句 Timer1.Enabled = False 改为Timer1.Enabled = True*原语句 Timer1.Enabled = True 改为Timer1.Enabled = False填空Tk728.Frm( 1 ) n + 1 ( 2 )n - 1改错Gc729.FrmCommand1_Click*原语句item = item + j 改为 item = item * j*原语句sum = item 改为 sum = sum + item填空Tk729.Frm( 1 ) For i=0 to 1000 step 2 ( 2 ) Str(sum)改错Gc756.Frm属性设置:Command1的Name、Caption、Left和Top属性分别设为:cmd1、移动、0、0 Command1_Click*原语句cmd1.Left = Left + 100 改为 cmd1.Left = cmd1.Left + 100*原语句Top = cmd1.Top + 100 改为 cmd1.Top = cmd1.Top + 100填空Tk56.Frm( 1 ) Val(Txt1.Text) ( 2 ) num * rmb改错Gc757.Frm属性设置:Command1_Click*原语句Item = 0 改为 Item = 1*原语句 Sum = Sum + Item 改为 Sum = Sum + 1 / Item填空Tk757.Frm( 1 ) b^2 – 4 * a * c ( 2 ) b / (2 * a)改错Gc784.Frm属性设置:Command1的Name、Caption属性分别设置为Cmd1、开始计时Private Sub Form_Load()*原语句 Timer1.Interval = 100 改为 Timer1.Interval = 1000Private Sub Timer1_Timer()*原语句 Label2(0).Caption = Timer1 改为 Label2(0).Caption = Time填空Tk784.Frm( 1 ) x ( 2 )Form1.Text1.ForeColor改错Gc785.FrmCommand1_Click*原语句Item = 0 改为 Item = 1*原语句 Sum = Sum + Item 改为 Sum = Sum + i / Item填空Tk785.Frm( 1 ) s + i^2 ( 2 ) End。
【程序改错】'题目:该程序的功能是求出100到200之间的全部素数,并且按每行4个、每个数据之间有10个空格的格式输出。
'注意:不可增加或删除程序行,也不可以更改程序结构' Private Sub Form_Click()dim k as integer,i as integer,j as integerk = 0For i = 100 To 200'**********FOUND**********For j = 1 To i - 1If i Mod j = 0 Then Exit ForNext jIf j = i Then'**********FOUND**********Print i; Tab(10);k = k + 1'**********FOUND**********If k Mod 5 = 0 Then Print;End IfNext iEnd Sub答案:1). For j = 2 To i - 1 或For j = 2 To -1 + i2). Print i; Space(10);3). If k Mod 4 = 0 Then Print━━━━━━━━━━━━━━━━'【程序设计】' '题目:(事件)单击窗体。
(响应)求100以内偶数的和,并将结果输出在窗体上。
将结果存入变量SUM中答案:26__________________________________Dim i As IntegerFor i = 1 To 100If i Mod 2 = 0 Thensum = sum + iEnd IfNextPrint sum'【程序改错】'------------------------------------------------'题目:在下面的程序段中过程pd可以判断任意三个数能' 否构成三角形的三边,利用该过程的判定结果,对能构成三角形的计算其面积,构不成的显示"不能构成三角形Option ExplicitPrivate Sub Form_Click()'**********FOUND**********Dim x%, y%, z%, s%, b As Boolean,h as Singlex = InputBox("请输入三角形的边长")y = InputBox("请输入三角形的边长")z = InputBox("请输入三角形的边长")= InputBox("请输入三角形的边长")b = pd(x, y, z)h = (x + y + z) / 2'**********FOUND**********If not b Thens = Sqr(h * (h - x) * (h - y) * (h - z))Print "三角形面积是"; sElsePrint "不能构成三角形"End IfEnd Sub'**********FOUND**********Public Function pd( ) As BooleanIf x > 0 And y > 0 And z > 0 And x + y > 0 And x + z > y And y + z > x Thenpd = TrueElsepd = FalseEnd IfEnd Function答案:1). Dim ★x%★, ★y%★,★z%★, ★s!★, ★b★As Boolean★, ★h As Single2). If b Then3). Public Function pd(x%, y%, z%) As Boolean━━━━━━━━━━━━━━━━三、程序设计共1题(共计15分)'题目:(事件)双击窗体。
VB程序改错ProProblemProSource ProAnswer程序功能:根据整型参数m,计算100-999的平方根的倒数之和。
程序的函数fun()中有一行有错误,改正错误,使它能输出正确的结果。
Private SubCommand1_Click() PrintFormat(fun(100, 999),"#.######")End SubPrivate Function fun(m As Integer, n As Integer) As Single 43.27978程序功能:回文数是指正读和反读都一样的正整数。
例如27672是回文数。
求[10000,99999]之间的偶数回文数的个数。
程序中有一行有错误。
改正错误,使它能输出正确的结果。
Private SubCommand1_Click()n = 0For x = 10000 To 99999 a = x \ 10000 Mod 10 '万位b = x \ 1000 Mod 10 '千位c = x \ 100 Mod 10'百位400程序功能:回文数是指正读和反读都一样的正整数。
例如37673是回文数。
求[10000,99999]之间的奇数回文数的个数。
程序中有一行有错误。
改正错误,使它能输出正确的结果。
Private SubCommand1_Click()n = 0For x = 10000 To 99999 a = x \ 10000 Mod 10 '万位b = x \ 1000 Mod 10 '千位c = x \ 100 Mod 10'百位500程序功能:回文数是指正读和反读都一样的正整数。
例如4774是回文数。
求[1000,9999]之间的偶数回文数的个数。
程序中有一行有错误。
改正错误,使它能输出正确的结果。
Private SubCommand1_Click()n = 0For x = 1000 To 9999 a = Int(x / 1000)'千位b = Int(x / 100) -a * 10 '百位c = Int(x / 10) -a * 100 - b * 10 '十40程序功能:计算s=2!+4!+6!+8!。
VB中常见的错误1、运行下面的Visual Basic程序,单击命令按钮Command1,出现如下图所示的提示信息:Private Sub Command1_Click()Dim a As Single, b As Singlea = Val(Text1.Text)b = 10If a >= bb = a * a + 2 * bEnd IfLabel1.Caption = Str(b)End Sub出现该错误的原因是A.If语句缺少Then B.If语句缺少ElseC.变量a的数据类型说明错误D.变量b的数据类型说明错误2、某VB程序的事件过程如下所示:Private Sub Command1_Click ( )Dim a As Integera = Val(Text1.Text)Text1.Text = Str(Int( a ))End Sub运行程序,单击按钮Command1后弹出如下图所示的错误提示。
导致该错误的原因可能是()A.Int函数计算时出现错误B.Val函数应用不正确C.窗体上缺少Text1文本框对象D.变量a数据类型定义错误3、某Visual Basic程序段如下:Dim a(1 To 10) As IntegerDim i As Integera(1) = 1For i = 2 To 10a(i) = a(i - 1) * iNext i运行该程序段,会出现的错误提示为(A)下标越界(B)子程序或函数未定义(C)要求对象(D)溢出Interger类型范围在-32768~32767,而1到10相乘超出这个范围4、某Visual Basic程序如下:Dim a(1 To 10) As IntegerDim i As IntegerFor i = 1 To 10a(i) = i * iNext iList1.AddItem Str(a(i))End Sub运行程序,单击命令按钮Command1后,出现的错误提示为(A)下标越界(B)子程序或函数未定义(C)溢出(D)类型不匹5、有如下的Visual Basic程序:Private Sub Command1_Click()Const pi = 3.14Dim s As Single, r As Singler = Val(text1.Text)pi = 3.1415s = pi * r ^ 2Label1.Caption = "面积为" + Str(s)End Sub程序运行后,单击命令按钮Command1,出现如图所示的错误提示,下列原因分析正确的是(A)常量不能用小数(B)pi是常量,不允许赋值(C)文本框Text1中输入的数据不是常量(D)表达式结果超过了变量类型的范围6、某Visual Basic程序如下:Private Sub Command1_Click()Dim a(1 To 10) As IntegerDim i As IntegerFor i = 1 To 10a(i) = i * iNext iList1.AddItem Str(a(i))End Sub运行程序,单击命令按钮Command1后弹出如图所示的出错信息提示,此时程序正执行的语句是(A)For i = 1 To 10(B)a(i) = i * i(C)Next i(D)List1.AddItem Str(a(i))7、某Visual Basic程序如下:Dim a As Single, b As SingleDim c As Singlea = 1b = 5c = Sqr(a - b)Text1.Text = Str(c)End Sub运行程序,单击命令按钮Command1后弹出如图所示的出错信息提示,此时程序正执行的语句是(A)a = 1(B)b = 5(C)c = Sqr(a - b)(D)Text1.Text = Str(c)8、某同学正编写一个判断酒驾行为的Visual Basic程序,其窗体和代码窗口如下图所示。
中南大学现代远程教育课程(专科)考试复习题及答案《VB程序设计与应用》一、选择题:在每小题给出的四个选项中,只有一项是符合题目要求的,请把所选项前的字母填在题后的括号内。
1. Visual Basic程序中分隔一行中各语句的字符是()。
[ ]A)‘B):C)\D)_2. 下列可作为Visual Basic的变量名的是()。
[ ]A: Filename B: A(A+B)C: A%D D : Print3. 要让菜单项无效,应将()属性值设置为False。
[ ]A. VisibleB. EnabledC. MoveableD. Checked4. 以下过程是()事件。
Prviate Sub Form_Load( )……End Sub [ ]A: 命令按钮的单击B: 命令按钮的装载C; 窗体的装载D: 窗体的单击5. Vb中描述文件扩展名的是()属性。
[ ]A: Drive B: PatternC: FileName D: Path6. 关于Visual Basic中事件的说法中,不正确的为()。
[ ]A)事件是由Visual Basic预先定义好的,能够被对象识别的动作B)DblClick(双击)是Visual Basic中的一种事件C)一个对象可以识别一个或多个事件D)对于一个系统提供的对象可以识别哪些事件,需要程序员自己定义7. 下列控件中可设置滚动条是()。
[ ]A. 检查框(复选框)B. 框架C. 文本框D. 标签框8. 在Visual Basic中建立一个空窗体,( )不会是其默认名。
[ ]A. Form1B. Form2C. FormxD. Form109. Const One&=1,则One为()类型的常数。
[ ]A)整型B)字节型C)长整型D)单精度型10. 关于逻辑型数据,下列说法错误的是()。
[ ]A. 逻辑型数据只有两种可能值:True或者FalseB. 当把逻辑值转换为数值时False转为0,True转为1C. 当把其他类型数据转换为逻辑数据时,非0数转换为True,0转换为FalseD. 逻辑型数据以2个字节存储11. 以下()不是Visual Basic的特点。
VB改错:整理与分析1.参数是按值传递还是按地址传递:byval(常考),byref 2.Do……loop until n(n的取值是=某值还是>某值或<某值)3.字符串,如st=””的位置,是在前还是在后;数值,k,sum,j=j+1的位置是在前还是在后;逻辑型,如flag=true的位置,prime=true等位置4.字符串的连接,如:st=st & str(A(i))等,遗漏st;还有将数字赋给字符串一定要加str(数字) 5.在for 语句中的考点:如for i=1 to Ubound(A)有可能考查Ubound(A)-1;是for i=1 to k还是for i=k to 1 step -1 ;step -1也是考点有可能遗漏,语句无法正常执行6.在退出具体语句中,exit ……(do,for sub,function)等把他们的搭配搞错7.对数字的处理,是str还是cstr,如求长度就用cstr,n=len(cstr(数值)),出现他们时一定检查是否用错,important8.各数对应的数据类型,integer,string等,搭配要正确9.在循环中,搭配不当,如i错搞成j,for i=1 to 10 ……next j搭配错误10.R edim preserve A(k)等遗漏preserve11.在if语句中的考点,要具体判断成立条件,分支条件,做到不重不漏12.赋值对象搞错,是k=n还是n=k 13.用and 还是用or,看满足的条件要求是什么,并列还是或者14.字符串的连接,是正序ps=ps & st 还是逆序ps=st & ps15.形参不可以定义为定长字符串,如private function prime(s asstring*1) as string,就错误,应改为s as string,但数组可以的如:…(n as long,np() as string *1)16.常见错误和难点分析1.在选择结构中缺少配对的结束语句2.多边选择ElseIf关键字的书写和条件表达式的表示3.Select Case语句的使用(1) "表达式列表i" 中不能使用"变量或表达式"中出现的变量。
改错〖第1题〗『程序改错』(5分)(题号:132)'------------------------------------------------'【程序改错】'------------------------------------------------'题目:求s=2!+4!+6!+8!,阶乘的计算用Function过程' fact实现'------------------------------------------------'注意:不可增加或删除程序行,也不可以更改程序结构'------------------------------------------------Private Sub Form_Click()dim i as integer,s as Long'**********FOUND**********For i = 2 To 8s = s + fact(i)Next iPrint sEnd Sub'**********FOUND**********Public Function fact( )dim t as Longdim i as integert = 1For i = 1 To nt = t * iNext I'**********FOUND**********fact=iEnd Function答案:1)、For i = 2 To 8 Step 22)、Public Function fact(ByVal n As Integer) 或Public Function fact(n As Integer) 或Public Function fact(n%) 或Public Function fact(n) 或Public Function fact(ByVal n%) 或Public Function fact(ByVal n)3)、fact = t〖第1题〗『程序改错』(5分)(题号:132)'------------------------------------------------'【程序改错】'------------------------------------------------'题目:求s=2!+4!+6!+8!,阶乘的计算用Function过程' fact实现'------------------------------------------------'注意:不可增加或删除程序行,也不可以更改程序结构'------------------------------------------------Private Sub Form_Click()dim i as integer,s as Long'**********FOUND**********For i = 2 To 8s = s + fact(i)Next iPrint sEnd Sub'**********FOUND**********Public Function fact( )dim t as Longdim i as integert = 1For i = 1 To nt = t * iNext I'**********FOUND**********fact=iEnd Function答案:1)、For i = 2 To 8 Step 22)、Public Function fact(ByVal n As Integer) 或Public Function fact(n As Integer) 或Public Function fact(n%) 或Public Function fact(n) 或Public Function fact(ByVal n%) 或Public Function fact(ByVal n)3)、fact = t〖第1题〗『程序改错』(5分)(题号:493)'------------------------------------------------'【程序改错】'------------------------------------------------'题目:给定年号与月份,判断该年就是否闰年,并根据给出的' 月份来判断就是什么季节与该月有多少天?' (闰年的条件就是:年号能被4整除但不能被100整除,' 或者能被400整除。
VB 程序设计笔试题题库选择题F 列常量中,是Integer 类型常量的是( C )。
A 、 123& B 、 -38844C 、 123%D 、 32768面选项中 () 是字符连接运算符 . ( A )A 、 &B 、 AndC 、 %D 、 Mod 下面关 于 VB 的 集成 开发 环境( IDE ) 的叙 述中, 不正 确的 是 B IDE 是设计、调试、运行vas 序的工具。
用户不能随意关闭IDE 中的窗口。
" 窗体设计 " 窗口是用来设计应用程序界面(窗体)的。
打开/关闭各窗口的命令主要在IDE 的”视图"菜单中。
A 、 B 、 C 、 D 、表达式 15 Mod 4 + 13 \ 5 * 2 的值是 D A 、 B 、 C 、 D 、 赋值语句 A=123 +)。
A、 B 、Clen ( “程序设计”)=(C 52 6 10 7 0 2 4Mid$(“123456”,3,执2)行后,A= ( A )。
A 、157B 、12334C 、123D 、"12334"在一个语句内写多条语句时, 用来分隔每条语句的符号是( C ).A 、,B 、;C 、:D 、、8将逻辑型数据转换成整型数据时,转换规则是( A 将True 转换为1 B 将True 转换为1 C 将True 转换为0 D 将True 转换为-19 表达式2+3*4八5-SIN(X+1)/2中最先进行的运算是 SIN 4八5 3*4x+1,将False 转换为0 ,将False 转换为-1 ,将False 转换为-1 ,将False 转换为0A 、B 、C 、D 、 )。
).10如果x=2 ,则表达式x+1>2 Or sin(x)>0.9 ( B )。
A不能计算B、TrueC、5D、False11随机产生[10,50] 之间整数的正确表达式是( A、Round( Rnd*50)B、Int(Rnd*40+10)C、Round( Rnd*51)D、10+Int(Rnd*41)12每建立一个窗体, 工程管理器窗口中就会增加一个A类模块文件B工程文件C窗体文件D程序模块文件13INT(100*RND(1)) 产生的随机整数的闭区间是( A、B、C、D、[1,100][0,99][0,100][1,99]And 3>x+3 的值)。
1.'功能:以下程序段用于计算n的阶乘:n!。
(1!=1)2. 已知某城市一年的交通事故车辆报废情况,编程序计算该城市的交通事故一年损失金额。
3. 下面的程序用"冒泡"法将数组a中的10个整数按从小到大排列,请将程序补充完整。
4. '程序运行界面。
键盘输入3个数,将它们按由大到小的顺序输出,-1为结束标志。
5. '在窗体有三个复选框,名称分别为Ch1、Ch2和Ch3,标题依次为'"体育"、"音乐"、"美术",还有一个命令按钮,名称为C1,标题'为"显示"。
要求程序运行后,如果选中某个复选框,则当单击'"显示"命令按钮时,则显示相应的信息。
例如,如果选中"体育"'和"音乐"复选框,则单击"显示"命令按钮后,在窗体上显示'"我的爱好是体育音乐"(如图1所示);而如果选中"体育"、'"音乐"和"美术"复选框,则单击"显示"按钮后,在窗体上显示"'我的爱好是体育音乐美术"。
6. 窗体上建立了一个文本框Text1("输入口令")和一个命令按钮Command1("检查")。
' 判断密码是否正确,并显示相应提示在加载窗体时设置密码框最大长度为8,密码显示字符为“*”7. 下面的程序用于求三个数中最大数8. 要求输入若干学生的成绩,计算平均分和高于平均分的人数,并将这两个数据放入数组的最后。
9. 求A,B,C三个数的最大值。
10. 该程序通过For循环计算一个表达式的值,这个表达式是1/2+2/3+3/4+4/511. 用户单击命令按钮后,程序将文本框Text1中的文本反转显示,同时在文本框Text2中显示文本框Text1中字符串的个数12. 功能:单击“插入数据”按钮后,输入一个整型数据,该数据会被插入到一个有序的数组a(1 to 10)中,插入该数据后数组还是有序的。
3001题:程序功能:求s=1+3+5+7+...直到s>2000为止。
程序中有两行有错误。
改正错误,使它能输出正确的结果。
原程序:Private Sub Command1_Click()Dim i As Integer, s As Longs = 0i = 1Do Until s < 2000s = s + ii = i + 1LoopPrint sEnd Sub答案:20253002题:程序功能:求s=1+3+5+7+...直到s>3000为止。
程序中有两行有错误。
改正错误,使它能输出正确的结果。
原程序:Private Sub Command1_Click()Dim i As Integer, s As Longs = 0i = 1Do Until s < 3000s = s + ii = i + 1LoopPrint sEnd Sub答案:30253003题:程序功能:计算s=2!+4!+8!。
程序中有两行有错误。
改正错误,使它能输出正确的结果。
原程序:Private Sub Command1_Click()Dim k As Integer, i As IntegerDim s As Long, t As Longs = 0i = 1Do While i <= 3t = 1k = 1While k <= 2 * it = t * kk = k + 1Wends = s + ti = i + 1WendPrint sEnd Sub答案:403463004题:程序功能:计算s=2!+4!+6!+8!。
程序中有两行有错误。
改正错误,使它能输出正确的结果。
原程序:Private Sub Command1_Click()Dim k As Integer, i As IntegerDim s As Long, t As Longs = 0i = 1Do While i <= 3t = 1k = 1While k <= 2 ^it = t * kk = k + 1Wends = s + ti = i + 1WendPrint sEnd Sub答案:410663005题:程序功能:求200到400间,能被3整除但不能被7整除的数的个数。
VB中常见的错误1、运行下面的 Visual Basic程序,单击命令按钮 Command1,出现如下图所示的提示信息:Private Sub Command1_Click()Dim a As Single, b As Singlea = Val(Text1.Text)b = 10If a >= bb = a * a + 2 * bEnd IfLabel1.Caption = Str(b)End Sub出现该错误的原因是A.If语句缺少Then B.If语句缺少ElseC.变量a的数据类型说明错误 D.变量b的数据类型说明错误2、某VB程序的事件过程如下所示:Private Sub Command1_Click ( )Dim a As Integera = Val(Text1.Text)Text1.Text = Str(Int( a ))End Sub运行程序,单击按钮Command1后弹出如下图所示的错误提示。
导致该错误的原因可能是()A.Int函数计算时出现错误 B.Val函数应用不正确C.窗体上缺少Text1文本框对象 D.变量a数据类型定义错误3、某Visual Basic程序段如下:Dim a(1 To 10) As IntegerDim i As Integera(1) = 1For i = 2 To 10a(i) = a(i - 1) * iNext i运行该程序段,会出现的错误提示为(A)下标越界(B)子程序或函数未定义(C)要求对象(D)溢出Interger类型范围在-32768~32767,而1到10相乘超出这个范围4、某Visual Basic程序如下:Private Sub Command1_Click()Dim a(1 To 10) As IntegerDim i As IntegerFor i = 1 To 10a(i) = i * iNext iList1.AddItem Str(a(i))End Sub运行程序,单击命令按钮Command1后,出现的错误提示为(A)下标越界(B)子程序或函数未定义(C)溢出(D)类型不匹5、有如下的Visual Basic程序:Private Sub Command1_Click()Const pi = 3.14Dim s As Single, r As Singler = Val(text1.Text)pi = 3.1415s = pi * r ^ 2Label1.Caption = "面积为" + Str(s)End Sub程序运行后,单击命令按钮Command1,出现如图所示的错误提示,下列原因分析正确的是(A)常量不能用小数(B)pi是常量,不允许赋值(C)文本框Text1中输入的数据不是常量(D)表达式结果超过了变量类型的范围6、某Visual Basic程序如下:Private Sub Command1_Click()Dim a(1 To 10) As IntegerDim i As IntegerFor i = 1 To 10a(i) = i * iNext iList1.AddItem Str(a(i))End Sub运行程序,单击命令按钮Command1后弹出如图所示的出错信息提示,此时程序正执行的语句是(A)For i = 1 To 10 (B)a(i) = i * i(C)Next i (D)List1.AddItem Str(a(i))7、某Visual Basic程序如下:Private Sub Command1_Click()Dim a As Single, b As SingleDim c As Singlea = 1b = 5c = Sqr(a - b)Text1.Text = Str(c)End Sub运行程序,单击命令按钮Command1后弹出如图所示的出错信息提示,此时程序正执行的语句是(A)a = 1 (B)b = 5(C)c = Sqr(a - b) (D)Text1.Text = Str(c)8、某同学正编写一个判断酒驾行为的Visual Basic程序,其窗体和代码窗口如下图所示。
根据代码窗口中的程序,要在程序运行时获取输入的x值,窗体上必须增加的对象是A. 标签Text1B. 标签Label2C. 文本框Text1D. 文本框Label29、运行下面的 Visual Basic程序,单击命令按钮 Command1,出现如下图所示的提示信息:Private Sub Command1_Click()Dim i As Integer, c As String, s As String, t As Strings = "2012 Hero"t = ""For i = 1 To Len(s)c = Mid(s, i, 1)If c >= "a" And c <= "z"t = t + cEnd IfNext iText1.Text = tEnd Sub出现该错误的原因是A.If语句缺少Then B.If语句缺少ElseC.变量t的数据类型说明错误 D.变量s的数据类型说明错误10、某VB程序在调试中弹出如图所示的错误窗口,产生该错误的可能原因是()A.该VB程序代码中,缺少NextB.该VB程序窗体界面中,缺少某控件C.该VB程序代码中,某个常量或变量没有声明D.该VB程序设计软件没有正确安装11.运行如下Visual Basic程序,单击命令按钮Command1,出现如图所示的出错信息。
发生"下标越界"错误时所执行的语句是Private Sub Command1_Click()Dim a(0 To 5) As IntegerDim i As Integer '①a(0) = 1 '②For i = 1 To 5a(i) = 2 * a(i - 1) + 1 '③Next iText1.Text = Str(a(i)) '④End Sub(A)①(B)②(C)③(D)④12.运行如下Visual Basic程序,单击命令按钮Command1,出现如图所示的出错信息。
发生"下标越界"错误时所执行的语句是Dim a(0 To 5) As IntegerDim i As Integer '①a(0) = 1 '②For i = 1 To 6a(i) = 2 * a(i - 1) + 1 '③Next iText1.Text = Str(a(5)) '④End Sub(A)①(B)②(C)③(D)④13.某Visual Basic程序如下:Private Sub Command1_Click()Dim a(1 To 10) As IntegerDim i As IntegerFor i = 1 To 10a(i) = i * iNext iList1.AddItem Str(a(i))End Sub运行程序,单击命令按钮Command1后弹出如图所示的出错信息提示,此时程序正执行的语句是(A)For i = 0 To 10 (B)a(i) = i * i(C)Next i (D)List1.AddItem Str(a(i))14.运行如下Visual Basic程序,单击命令按钮Command1,出现如图所示的出错信息。
发生"除数为零"错误时所执行的语句是Private Sub Command1_Click()Dim a As Integer, b As Integer, c As Singlea = 2 '①b = a + 1 '②c = a / (b - 3) '③Text1.Text = Str(c) '④End Sub(A)①(B)②(C)③(D)④15.有如下的Visual Basic程序:Private Sub Command1_Click()Const pi = 3.14 '①Dim s As Single, r As Singler = Val(text1.Text) '②pi = 3.1415 '③s = pi * r ^ 2 '④Label1.Caption = "面积为" + Str(s)End Sub程序运行后,单击命令按钮Command1,出现如图所示的错误提示,下列原因分析正确的是(A)常量不能用小数(B)pi是常量,不允许赋值(C)文本框Text1中输入的数据不是常量(D)表达式结果超过了变量类型的范围16.题目如上题,问具体是哪条语句出错(A)①(B)②(C)③(D)④17.运行如下Visual Basic程序,单击命令按钮Command1,出现如图所示的出错信息。
发生"类型不匹配"错误时所执行的语句是Private Sub Command1_Click()Dim a As Integer, b As Integera = 10 '①b = 20 '②Text1.Text = "a+b=" + Val(a + b) '③End Sub '④(A)①(B)②(C)③(D)④18.某Visual Basic程序如下:Private Sub Command1_Click()Dim a As Single, b As SingleDim c As Singlea = 1b = 5c = Sqr(a - b)Text1.Text = Str(c)End Sub运行程序,单击命令按钮Command1后弹出如图所示的出错信息提示,此时程序正执行的语句是(A)a = 1 (B)b = 5(C)c = Sqr(a - b) (D)Text1.Text = Str(c)19.某Visual Basic程序如下:Private Sub Command1_Click()Dim i As Integer, sum As Integersum = 0For i = 10 To 2 Step -2sum = sum + iNext iText1.Text = Str(sum)End Sub运行程序,单击命令按钮Command1后弹出如图所示的出错信息提示,此时程序正执行的语句是(A)Sum = 0 (B)For i = 10 To 2 Step -2(C)sum = sum + i (D)Text1.Text = Str(sum)20.某Visual Basic程序如下:Private Sub Command1_Click()Dim a As Stringa = "d"a = Chr(Asc(a) - 32)Label1.Caption = aEnd Sub运行程序,单击命令按钮Command1后弹出如图所示的出错信息提示,此时程序正执行的语句是(A)a = "d" (B)End Sub(C)a = Chr(Asc(a) - 32) (D)Label1.Caption = a21.某Visual Basic程序如下:Private Sub Command1_Click()Dim x As Integer, i As IntegerFor i = 1 To 10 Step 3x = i * (i + 2)List1AddItem Str(x)Next iEnd Sub运行程序,单击命令按钮Command1后弹出如图所示的出错信息提示,引起该错误的语句是(A)For i = 1 To 10 Step 3 (B)x = i * (i + 2)(C)List1AddItem Str(x) (D)Next i22.某Visual Basic程序如下:Private Sub Command1_Click()Dim x As Integer, c As Integer, i As Integerc = 0For i = 1 To 12If 12 Mod i = 0 Thenc = c + 1End IfNext iText1.Tex = Str(c)End Sub运行程序,单击命令按钮Command1后弹出如图所示的出错信息提示,引起该错误的语句是(A)For i = 1 To 12 (B)c = c + 1(C)Next i (D)Text1.Tex = Str(c)23.下图所示是一个求和程序,程序界面上有标签Label1、标签Label2和一个命令按钮Command1。