10月VB复习资料带答案_第1页
10月VB复习资料带答案_第2页
10月VB复习资料带答案_第3页
10月VB复习资料带答案_第4页
10月VB复习资料带答案_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上Visual Basic语言笔试复习题一、单项选择题 1下列关于Visual Basic程序语法规则的叙述中正确的是( D ) (A)一个程序代码行只能写一个语句 (B)用Print输出多个数据项时,可以使用冒号“:”作为数据项之间的分隔符 (C)赋值语句结束时,可以使用分号或逗号作为结束符 (D)字符型数据常量必须使用英文双撇号作为定界符,而不能使用中文双引号3已知X=5,执行语句 Y = IIF(X4,3,2) 后,Y的值为( B )(A)2 (B)3 (C)4 (D)54设x=1,以下函数返回值最大的是( B )(A)Sin(x)(B)Exp(x)(C)Sqr(

2、x)(D)Log(x)5. 执行语句S1 = Chr(Int(Rnd * 26 + 97)之后,变量S1的值应为( B )A数字字符 B大写字母 C小写字母 D标点符号6.Text1中内容为“2007-4-21”,执行语句X = Val(Mid(Text1.Text, 6, 4)后,X的值为( D )(A)421(B)4.21(C)4-21(D)49在VB程序中,如果未作任何声明,直接使用的变量的数据类型为( D )A.Integer B.Long C.String D.Variant10. 表达式 Len(方正将采用AMD64处理器生产计算机)的值是( B )A13 B18 C26 D311

3、1. 循环语句 For n = -5 To 5 Step 2 决定循环体的执行次数为( D )A3次 B4次 C5次 D6次15函数表达式String(2, ChongQing)的返回值是( B )ACQ BChongQing CCC DChongQingChongQing21.字符串变量 A = ”C:Program FilesMicrosoft Visual StudioVB98VB6.EXE”,能从中取出子串”VB6.EXE”的表达式是( C )ARight(A, 6)BMid(A, Len(A) CMid(a, Len(A) - 6)DMid(A, Len(A) + 6)22.下列单行

4、If语句中不正确的是( D )(A)If x y Then Print x y (B) If x Then t = t + 1 (C)If x Mod 3 = 2 Then Print t(D) If x 60 Then i = 1If a 70 Then i = 2(A)i = 1(B)i = 2(C)i = 3(D)i = 4If a 80 Then i = 3If a 90 Then i = 4Print i=; i46. 下列各个选项中,能构成语句的是( B )(A)对象名.属性名 (B)对象名.方法名 (C)对象名.事件名 (D)对象名.函数名48. 将焦点移到某个名为Object的

5、控件,所使用的方法是( A )(A)Object.SetFocus (B)Object.Visible (C)Object.Refresh (D)Object.GetFocus 50. 程序运行状态,改变Visual Basic程序窗口大小,则自动触发的窗体事件是( B) (A) Click (B)Resize (C)Load (D)UnLoad51下列程序段执行后,窗体上显示输出的结果为( D )Private Sub Form_Click() Dim a, b, c a = 5: b = 7: c = a = b(A)5(B)7(C)0(D)False Print cEnd Sub53.

6、Visual Basic允许在一个行内书写多个语句,但各语句之间必须使用( C )符号分隔开来。(A)逗号(,)(B)分号(;)(C)冒号(:)(D)感叹号(!)二、多项选择题 3以下控件中,能响应Click事件的有( ACDE )(A)标签 (B)计时器(C)命令按钮 (D)水平滚动条(E)复选框4执行程序时,自动发生的窗体事件是( ACD )(A)Load (B)Click (C)Activate (D)Initialize (E)LostFocus7下列函数表达式中,返回值相等的是( BC ) AAbs (15.6256) BFix (15.625) CInt (15.625) DRou

7、nd (15.625)ESqr (15.625)8VB中可用于控制循环的有( ABCDE ) A if 语句与Goto语句配合使用 BWhile Wend CFor Next 语句 B DDo While Loop语句 EDo Loop Until语句9能产生一个数值范围为1,2,3,4,5和6的随机整数的表达式为( AC )A. Int ( 6 * Rnd + 1 )B. Int (5 * Rnd ) + 1 C .Int ( 6 * Rnd ) + 1 D. Int (5 * Rnd + 1 ) E. Int ( 6 * Rnd )11.下列各项是滚动条(HScrollBar或VScrol

8、lBar)属性的有( ACE )(A) Max (B) Change (C) Value (D) Scroll (E) LargeChange12.鼠标事件MouseDown将返回的参数有( ABCD )(A) Button (B) Shift (C)当前坐标Y (D) 当前坐标X (E) Value三、判断分析题2语句 Dim x,y,z As Long 能将变量x、y和z均设置为长整型。4循环语句For i=n TO m Step k 正常结束后,循环变量i的值等于终值m。6执行语句X = Y = 5后,变量X与Y的值均为5。7在窗体上按下鼠标左键并拖动鼠标,可以多次触发Form_Mous

9、eMove事件。8Int (-4.8) + Int (4.8) 等于0。11、设变量A,B,C均为变体类型,则A=B=C 是一个合法的VB 语句,且A的返回值为True或False。12、在窗体的“通用”部分用Dim声明的变量,在本窗体内的所有过程或函数中都有效。13Visual Basic语言中的整型数据也可以用十六进制数表示。16定义在一个事件过程内部的变量,当该事件过程执行结束后,变量就会被释放。四、程序填空题 4在文本框中输入字符串,用n1, n2, n3分别统计其中大写字母、小写字母、其他字符出现的个数。Private Sub Command1_Click() c = Text1.T

10、ext For p = 1 To c1 = Mid(c, p, 1) Select Case Case A To Z n1 = n1 + 1 Case a To z n2 = n2 + 1 Case Else n3 = n3 + 1 End Select Next p Label1.Caption = 大写字母: & Str(n1) & 小写字母: & Str(n2) & 其它字符: & Str(n3)End Sublen(C), C7.程序是统计文本框Text1内字母e出现的次数(不区分大小写),结果显示在标签Label1中。Private Sub Command1_Click() word

11、 = Text1.Text a = 0 For i = 1 To c = If c = e Then a = a + 1 End If Next i Label1.Caption = 字母e出现的次数: & aEnd SubLen (word), LCase (Mid(word, i, 1)9、下面程序的功能是计算,直到末项值10-5为止。Private Sub Form_Click()n = 0:Sum = 0Do n = n + 1 Sum = Loop Print SumEnd Subsum+1/n, until 1/n 20, 10 To 2016程序功能是产生10个小于等于100的随

12、机正整数,找出其中的最小数,并记录该最小数的位置。Private Sub Command1_Click( )Min = Pos = 0For k = 1 to 10 X = If X Min Then Min = X : Pos = Next kPrint “The minimum =”; Min; “ Its Position : “; PosEnd Sub100, Int (Rnd *100+1), k18验证素数(素数是只能被1和自身整除的自然数)Private Sub Command1_Click() Dim n As Integer, i As Integer, f As Boole

13、an f = True n = Val(InputBox(请输入一个正整数 + vbCrLf + (大于1), 素数, 2) For i = 2 To If n Mod i = Then f = False:Exit For End If Next i If f = Then Print n; 是素数 Else Print n; 不是素数End Subsqr(n), 0, True19显示100200之间的所有素数。Private Sub Command1_Click ( )F=0 For N = 100 To 200 For K=_ _ To _ _ If N Mod K=_ _ ThenF

14、=1:Exit For End If Next K If F=0 Then Print N F = _ _ Next N End Substep 1,2,sqr(n),0,023、随机产生25个0或者1构成55矩阵,要求在窗体上显示该矩阵和其下三角形元素。Private Sub Form_Click()Cls:Dim a(1 To 5, 1 To 5)Print 原始矩阵:For i = 1 To 5 For j = 1 To 5 a(i, j) = Print a(i, j); Next j PrintNext iPrint 显示下三角形元素: For i = 1 To 5 For j =

15、1 To Print a(i, j); Next j PrintNext iEnd Subint(rnd*2),i25单击窗体上的任何一点,以该点位置为圆心,用蓝色画出一个半径为300的圆。Private Sub Form_MouseDown ( Button, Shift, X, Y ) Circle (X,Y), , End Sub300,vbblue26按鼠标左键点击窗体,以点击点为圆心,以小于50的随机数为半径,画出一个圆形。Private Sub Form_MouseDown(Button, Shift, X, Y ) If Button = Then R = Int (Rnd *

16、) Circle ( , ), REnd IfEnd Sub 1,50,x,y28执行语句Line(100,100)-Step(50,100)后,CurrentX的值为 。150五、分析程序 ,选择运行结果4运行程序,显示的结果是 Private Sub Form_Click ( C) For k = 1 To 7 For j = 1 To 7 If k 20 Then exit forNextLabel1.caption=Str(n)End Sub14运行下列程序,单击命令按钮Command1,在窗体上输出的结果是(D)Private Sub Command1_Click() For K =

17、 1 To 4(A)(B)(C)(D)AAABBBBBBBBCCCCCCCCCCCCDDDDDDDDDDDDDDDDEEEEEEEEE For N = 0 To K Print Chr(65 + K); Next N Print Next KEnd Sub 17执行下面程序,单击窗体后,窗体上显示的内容是( D )Private Sub Form_Click()Dim aa = Array(Mon, Tue, Wed, Thu, Fri, Sat, Sun)Print a(5), LBound(a), UBound(a)End SubAFri 1 7 BFri 0 6CSat 1 7 DSat

18、 0 622下面程序运行后,窗体上显示的内容是( D )(A)5(B)4(C)3(D)出错Private Sub Form_Click()Dim a(2, 3) As IntegerFor i = 1 To 2 For j = 1 To 3 a(i, j) = i + j Next jNext iPrint a(i, j)End Sub28.运行下列程序,图片框Picture1中显示的内容为( A )。Dim i As LongPrivate Sub Form_Load()Timer1.Enabled = TrueTimer1.Interval = 50End SubPrivate Sub T

19、imer1_Timer() Picture1.Cls x = Picture1.ScaleWidth 2 y = Picture1.ScaleHeight - i + 1000 Picture1.Circle (x, y), 500 i = i + 10End Sub专心-专注-专业A一个圆形从Picture1的底边出现,逐渐上移并最终消失在Picture1的顶部边缘B一个圆形从Picture1的顶边出现,逐渐下移并最终消失在Picture1的底部边缘C一个圆形从Picture1的左边出现,逐渐右移并最终消失在Picture1的右边D一个圆形从Picture1的右边出现,逐渐右移并最终消失在P

20、icture1的左边29 下面程序运行后输出的图形是( C )Private Sub Form_Click() Const angle = 3.14159 / 180 For I = 0 To 360 Step 30 X1 = 1000 + 900 * Cos(angle * I) Y1 = 1000 + 900 * Sin(angle * I) X2 = 1000 + 500 * Cos(angle * I) Y2 = 1000 + 500 * Sin(angle * I) Line (X1, Y1)-(X2, Y2) Circle (1000, 1000), 480 Next IEnd S

21、ub(A)(B)(C)(D)六、设计程序题(每题10分)2在文本框中输入一个长数字串,单击“统计出现次数”按钮后,统计出现次数最多的数字及出现次数,并在标签Label1中显示结果。Private Sub Command1_Click()Dim t As String, s As Integer, c As String, n As Integert = Text1.Texts = Len(t)For i = 1 To s c = Mid(t, i, 1) If Asc(c) = 48 And Asc(c) max Then max = a(i) If a(i) min Then min = a

22、(i)Next iLabel1.Caption = maxLabel2.Caption = minEnd SubPrivate Sub Command2_Click()EndEnd Sub8求字符的ASCII码:在“输入字母”文本框Text1中输入 一个字母,单击”转换”命令按钮 Command1后,在 ”ASCII码” 标签框Label1中显示该字母的ASCII码。Private Sub Command1_Click()Label1.Caption = Asc(Text1.Text)End SubPrivate Sub Command2_Click()EndEnd Sub9在文本框Text1

23、中输入一个字符串,按“排列”命令按键Command1将输入的字符串按逆序排列,显示在标签框Label1中。按“结束”命令按键Command2结束程序。(注:逆序排列就是将离字符串首尾距离相等的两个字符依次交换。例如ABCD的逆序为 DCBA)Private Sub Command1_Click()Dim i As Integer, s As String, n As Integer, t As StringDim a As String, b As String s = Text1.Textn = Len(s)If n Mod 2 = 1 Then t = Mid(s, Int(n / 2)

24、+ 1, 1) Else t = For i = Int(n / 2) To 1 Step -1 a = Mid(s, i, 1) b = Mid(s, n - i + 1, 1) t = b & t & aNext iLabel1.Caption = tEnd Sub12在窗体上点击鼠标,以点击处为圆心,在窗体上画出一个不超出窗体边界的最大圆Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)Dim r As Singler = XIf Y r Then r = YE

25、lseIf Me.ScaleWidth - X r Then r = Me.ScaleWidth - XElseIf Me.ScaleHeight - Y 10 6Print nEnd Sub上机复习题二、编程计算的值,直到最后一项小于10-6为止(x的值由InputBox函数输入)参考答案:二、Private Sub Form_Click() x = Val(InputBox(请输入一个接近于1的小数, 输入) s = 1:n = 0:s1 = 1 Do While s1 0. n = n + 1:s1 = s1 * x / n :s = s + s1 Loop Print 计算结果=; s

26、End Sub三. 单击窗体,程序象走马灯一样,将标签中的字符“VB程序设计考试”按从右到左的方向在窗体上移动。当所有字符在窗体左侧消失以后,又从窗体右侧出现,重复以上过程。(所有控件的属性都必须在程序代码中设置)参考答案:一、调试程序Option Base 1Private Sub Form_Click() Dim a As Variant, n As Integer, max As Integer, pos As Integer 数组变量定义 a = Array(23, 12, 77, -90, 66, 88, 43, 52, 120, 20) n = Val(InputBox(请输入元素

27、个数n(n 10 Then n = 10 max = 0初始不应为100 pos = 1 For i = 1 To n下标从1开始 If (a(i) max) Then大于符号 max = a(i)保存最大值 pos = I保存位置 End If Next i Print 最大数是:; max, 最大数的位置是:; posEnd Sub三 参考程序:Private Sub Form_Load() Me.Caption = 以走马灯方式显示字符 :Label1.Caption = 2006年11月计算机等级考试 Label1.AutoSize = True:Timer1.Interval = 1

28、00End SubPrivate Sub Timer1_Timer() If Label1.Left + Label1.Width 0 Then Label1.Left = Label1.Left - 50 Else Label1.Left = Me.Width End IfEnd Sub 第五套三、在窗体上画圆:在窗体上的圆心处按下鼠标左键,拖动鼠标到圆边界上松开鼠标左键,以松开鼠标左键位置到按下鼠标左键位置之间的距离为半径画圆。按命令按钮Command2结束程序。三、参考答案:Dim X0 as long, Y0 As LongPrivate Sub Form_MouseDown(Butt

29、on, Shift, X, Y) X0 = X: Y0 = YEnd SubPrivate Sub Form_MouseUp(Button Shift, X, Y) R = Sqr(X - X0) 2 + (Y - Y0) 2) Circle (X0, Y0), REnd Sub第七套一、程序启动运行时,显示画面如图1;单击“开始”按钮Command1之后,在窗体上显示一个矩形,矩形内的填充颜色按每秒1次的速度随机变化,如图2所示;单击窗体,恢复到图1。 图1 图2二、在文本框中输入一个字符串,然后单击“检查”按钮Command1,若字符串中包含非数字,则在标签Label1中显示出错信息。三、

30、单击窗体,随机产生并输出16个2位正整数,然后指出其中的最大数及其位置。Private Sub Form_Click()Dim a As IntegerErrorCls: Randomizes = 0: n = 0For i = 1 To 16 a(i) = Int(Rnd * 90) + 10 Print a(i); If a(1) s ThenError a(i) = sError n = i End ErrorNext iPrintPrint 最大的数=; s:Print 最大数的位置=; iErrorEnd Sub第一题答案Privat Sub Command1_Click() Tim

31、er1.Enabled = True Command1.Visible = FalseEnd SubPrivate Sub Form_Click() ClsTimer1.Enabled = FalseCommand1.Visible = TrueEnd SubPrivate Sub Timer1_Timer() r = Rnd * 255: g = Rnd * 255 b = Rnd * 255 Line (1000, 500)-(2000, 1500), RGB(r, g, b), BFEnd Sub第二题答案:Private Sub Command1_Click() x = Len(Tex

32、t1) For i = 1 To x s = Mid(Text1, i, 1) If s 9 Or s s Then s = a(i): n = i End IfNext iPrintPrint 最大的数=; s:Print 最大数的位置=; nEnd Sub第九套一、程序运行后,图片框PictureBox1不可见,鼠标拖动水平滚动条滑块,图片沿水平方向展开或收缩,且展开的程度与滚动条滑块位置保持对应(初始条件在窗体加载事件过程中设置,图片自选)。二、在文本框中输入一串字符,按“转换”按钮,则将其中数字字符转换为星号“*”,并显示在文本框Text2中。三、程序功能是用随机函数产生20个2位整数

33、,分2行中输出,再寻找其中的最大数和最小数并输出其位置。Private Sub Form_Click()Dim a As Integer, a (1 To 20)Dim max As Integer, min As Integer:Dim posmax As Integer, posmin As IntegerRandomizeFor i = 1 To 20 产生20个数据 a(i) = Int(Rnd * 90 + 10): Print a(i); If i = 10 Then PrintNext iPrint:max = 100 0min = 0 100For i = 1 To 20If

34、a(i) max Then a(i) =max : posmax = I 寻找最大数 max = a(i) If a(i) = 0 And c ave Then 寻找大于平均值的数 n = n + 1:Print a(i) Print a(i); If n 5 = 0 Then Print 按每行5个输出大于平均值的数 mod Next k End IfNext iEnd Sub一、参考程序Private Sub Form_Load() Picture1.Width = 5900 Picture1.Height = 0 Timer1.Interval = 100 Timer1.Enabled = TrueEnd SubPrivate Sub Timer1_Timer() If Picture1.Height = A And c = a And c Max Then Max = a(i): student = b(i) End If Next i Print 成绩最好的学生是:; student; 考试成绩为:; Max; 分End SubPrivate Sub Check2_Click() r = Val(Text1.Text) If Check2.Value

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论