VB期末考试卷(2009-2010-1)a_第1页
VB期末考试卷(2009-2010-1)a_第2页
VB期末考试卷(2009-2010-1)a_第3页
VB期末考试卷(2009-2010-1)a_第4页
VB期末考试卷(2009-2010-1)a_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

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

文档简介

江南大学考 程序设计基础VB期末试卷 (A) 使用专业、班级 学号 姓名 题数一二三总分得分本题得分一、选择题每题1分,共计35分;1. 下列有关对象的叙述中,正确的是()。A. 对象由属性、事件和方法构成B. 对象的所有属性既可以在属性窗口设置,又可以在程序运行时用赋值语句设置C. 对象的事件一定就是由VB预先设置好的人工干预的动作D. 对象的方法是对象响应某个事件后所执行的一段程序代码2. 在一个多窗体程序中,可以仅将窗体Form2从内存中卸载的语句是()。A. Form2.UnloadB. Unload Form2C. Form2.EndD. Form2.Hide3. 应用程序窗体的名称属性为Frm1,窗体上有一个命令按钮,其名称属性为Cmd1,窗体和命令按钮的Click事件过程名分别为()。A. Form_Click() Command1_Click()B. Frm1_Click() Command1_Click()C. Form_Click() Cmd1_Click()D. Frm1_Click() Cmd1_Click()4. 运行状态,在文本框Txtinput中输入“ABC”时,窗体上显示()。Private Sub Txtinput_Change() Print Txtinput.Text;End SubA. AABABCB. ABCC. AD. A AB B ABCC5. 若需要在同一窗体内安排两组相互独立的单选按钮(OptionButton),可使用()控件作容器将它们分开。TextBoxPictureBoxImageFrameA. 或B. 或C. 或D. 或6. 要使一个文本框能显示多行信息,并具有水平和垂直滚动条,应先设置()。A. MultiLine属性置为True, ScrollBar属性设置为3B. AutoSize属性置为True, ScrollBar属性设置为TrueC. Alignment属性置为True, Style属性设置为2D. MultiLine属性置为True, ScrollBar属性设置为True7. 设窗体上有一个标签Label1和一个计时器Timer1,Timer1的Interval属性被设置为1000,Enabled属性被设置为True,要求程序运行时每秒在标签中显示一次系统当前时间。以下可以实现上述要求的事件过程是()。A. Private Sub Timer1_Timer() Label1.Caption = True End SubC. Private Sub Timer1_Timer() Label1.Interval = 1 End SubB. Private Sub Timer1_Timer() Label1.Caption = Time$ End Sub D. Private Sub Timer1_Timer() Label1.Text = Time End Sub8. 若看到程序中有以下事件过程,则可以肯定的是,当程序运行时()。Private Sub Click_MouseDown(Button As Integer, Shift As Integer, X As Single, _ Y As Single) If Button = 2 Then Print “VB Program”End SubA. 鼠标右键按下Command1对象,执行此过程B. 鼠标右键单击Click对象,执行此过程C. 鼠标左键单击Click对象,执行此过程D. 鼠标左键按下MouseDown对象,执行此过程9. 窗体上有名为Option1的单选按钮,则以下语句中与If Option1.Value = True Then不等价的是()。A. If Option1.Value ThenB. If Option1 = True ThenC. If Value = True ThenD. If Option1 Then10. 文本框Text1的KeyDown事件过程如下:Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)End Sub其中参数KeyCode的值表示的是发生此事件时()。A. 是否按下了Shift键B. 按下的是哪个数字键C. 所按的键盘键的键码(扫描码)D. 所按的键盘键的Ascii码11. 窗体上有一个用菜单编辑器设计的菜单。运行程序,并在窗体上单击鼠标右键,则弹出快捷菜单。如图所示。以下叙述中错误的是()。A. 在设计“粘贴”菜单项时,在菜单编辑器窗口中设置“有效”属性(有“”)B. 菜单中的横线是在该菜单项的标题输入框中输入了一个“-”(减号)字符C. 在设计“选中”菜单项时,在菜单编辑器窗口中设置“复选”属性(有“”)D. 在设计该弹出菜单的主菜单项时,在菜单编辑器窗口中去掉了“可见”前面的“”12. 执行以下语句时,会出现错误提示的是()。A. Print “2b3” + 12.5B. Print “12.5” + 12C. Print “12.5” & 12.5D. Print “2e3” + 12 13. 设变量D为Date型、A为Integer型、S为String型、L为Long型,下面赋值语句中不能执行的是()。 A. D = #12:30:00 PM# B. A = “3277e1”C. S = Now D. L = “4276D3”14. 数学表达式对应的Visual Basic表达式是()。A. Sin(30 * 3.14159 / 180) + Sqr(Log(x) + y) / 2 * 3.14159 + Exp(x + y)B. (Sin(30 * / 180) + Sqr(Ln(x) + y) / (2 *+ Exp(x + y)C. Sin(30 * 180 / 3.14159) + Sqr(Log(x) + y) / (2 * 3.14159 + e(x + y)D. (Sin(30 * 3.14159 / 180) + Sqr(Log(x) + y) / (2 * 3.14159 + Exp(x + y)15. 窗体上有一个名称为Command1的命令按钮,其事件过程如下:Private Sub Command1_Click() x = VisualBasicProgramming a = Right(x, 11) b = Mid(x, 7, 5) c = MsgBox(a, , b)End Sub运行程序后单击命令按钮,以下叙述中错误的是()。A. 信息框的标题是BasicB. 信息框中提示信息是programmingC. c的值是函数的返回值D. MsgBox的使用格式有错16. 下面的关系表达式中,运算结果为True的是()。A. Cint(1.5) = Int(1.5)B. Fix(1.5) = Int(1.5)C. Fix(-1.5) = CInt(-1.5)D. Fix(-1.5) = Int(-1.5)17. 运行下面程序,单击命令按钮Command1则立即窗口上显示的结果是()。Private Sub Command1_Click()Dim A As Integer, B As Boolean, C As Integer, D As Integer A = 20 / 3 : B = True C = B : D = A + C Debug.Print A, D, A = A+CEnd SubA. 7611B. 6511C. 76FalseD. 运行出错- -18. 以下Case语句中,能正确描述Y的绝对值大于6的是()。A. Case Abs(Y)6B. Case -6 To 6C. Case Not(-6 To 6)D. Case Is 619. 可以把变长字符串S中的第一个“ABC”子串,替换成“1234”的语句是()。A. S=Left(S,InStr(S,ABC)& 1234 & Right(S,Len(S)-InStr(S,ABC)-2)B. Mid(S,InStr(S,ABC),3)=1234C. Mid(S,InStr(S,ABC),4)=1234D. S=Left(S,InStr(S,ABC)-1)& 1234& Right(S,Len(S)-InStr(S,ABC)-2)20. 运行程序产生死循环时,按()可以中断程序运行。A. Ctrl+CB. EscC. Ctrl+BreakD. “停止运行”按钮21. 阅读程序:Private Sub Form_Click() a = 0 For j = 1 To 15 a = a + j Mod 3 Next j Print aEnd Sub程序运行后,单击窗体,输出的结果是()。A. 105B. 1C. 120D. 1522. 以下能够正确计算n!的程序是()。A. Private Sub Command1_Click() n = 5: x = 1 Do x = x * i : i = i + 1 Loop While i n Print x End SubC. Private Sub Command1_Click() n = 5: x = 1: i = 1 Do x = x * i : i = i + 1 Loop While i = n Print x End Sub B. Private Sub Command1_Click() n = 5: x = 1: i = 1 Do x = x * i : i = i + 1 Loop While i n Print x End Sub23. 运行程序,单击Command1,显示的结果为()。Private Sub Command1_Click() Dim a As Integer, b As Integer, c As Integer, i As Integer a = 2: b = 10: c = 1 For i = c To 2 * b Step a a = a + 2 i = i + 1 c = 2 * c If a = 10 Then Exit For b = b - 3 Next i Print i, a, b, cEnd SubA. 11 10 1 16B. 16 14 4 4C. 20 10 -4 6D. 10 8 6 824. 在窗体上画一个命令按钮,然后编写如下事件过程: Private Sub Command1_Click() Dim i, num Randomize Do For i = 1 To 1000 num = Int(Rnd * 100) Print num; Select Case num Case 12 : Exit For Case 58 : Exit Do Case 65, 68, 92 : End End Select Next i Loop End Sub上述事件过程执行后,下列描述中正确的是()。A. Do循环执行的次数为1000次B. 在For循环中产生的随机数小于或等于100C. 当所产生的随机数为12时结束所有循环D. 当所产生的随机数为65、68或92时窗体关闭、程序结束25. 以下程序功能是根据用户输入的n,求任意n位数的Armstrong数(一个n位数等于其各位数的n次方之和)。Private Sub command1_click() Dim n As Integer, i As Double, j As Integer, sum As Double, x As String n = Val(InputBox(请输入数据的任意位数) sum = 0 For i = 10 (n - 1) To 10 n - 1 x = i For j = 1 To Len(x) sum = sum + Val(Mid(x, j, 1) Len(x) Next j If sum = i Then Print i Next iEnd Sub执行此事件过程后发现结果是错误的,为能够得到正确结果,应做的修改是()。A. 把sum=0移动到For i循环内,For j循环前B. 把x= i改为x= Str(i)C. 把x= i改为x= CStr(i) D. 同时进行选项A和C的修改26. 下面有关数组的叙述中,不正确的是()。在过程中用ReDim语句定义的动态数组,其下标的上下界可以是变量数组作为形式参数时,传递的是每个数组元素的值在窗体模块的通用声明处可以用Public说明一个全局数组数组定义语句中可以用负数或小数来指定某一维的维下界或维上界的值A. B. C. D. 27. 下列有关控件数组的说法中,错误的是()。A. 控件数组由一组具有相同名称和相同类型的控件组成,不同类型的控件无法组成控件数组B. 控件数组中的所有控件不得具有各自不同的属性设置值C. 控件数组中的所有控件共享同一个事件过程D. 控件数组中每个元素的下标由控件的Index属性指定28. 在窗体上画一个命令按钮,其名称为Command1,然后编写如下代码:Private Sub Form_Click() Dim a , S As Integer, i S = 0 a=Array(1,3,5,7,9,11,13,15,17,19,21,23) For Each i In a If i / 3 i 3 Then S = S + i Next Print S; a(2)End Sub程序运行后,单击命令按钮,其输出结果是()。A. 3 3B. 24 5C. 48 3D. 96 529. 在窗体上画一个名称为Text1的文本框和一个名称为Command1的命令按钮,然后编写如下事件过程:Private Sub Command1_Click() Dim array1(10, 10) As Integer Dim i As Integer, j As Integer For i = 2 To 3 For j = 1 To 2 array1(i, j) = InputBox(请输入数据) Next j Next i Text1.Text =array1(3, 1) + array1(3, 4) End Sub程序运行后,单击命令按钮,在输入对话框中依次输入2、4、6、8,则在文本框中显示的值是()。A. 2 B. 4C. 6 D. 830. 以下关于过程及过程参数的描述中,错误的是()。A. 过程的参数可以是控件名称B. 调用过程时使用的实参的个数应与过程形参的个数相同C. 只有函数过程能够将过程中处理的信息返回到调用程序中D. 窗体可以作为过程的参数31. 以下关于变量作用域的叙述中,正确的是()。A. 过程运行结束后,过程的静态变量的值仍然保留,所以静态变量生命周期是整个模块B. 模块级变量只能用Dim语句声明C. 窗体中凡用Private声明的变量只能在某个指定的过程中使用D. 当不同作用域的同名变量发生冲突时,优先访问局限性小的变量32. 在窗体模块代码窗口的通用声明处,可以使用()语句说明数组。 Public A(10) As Integer Dim A(10) As Integer Private A(10) As Integer Static A(10) As IntegerA. B. C. D. 33. 若在模块中用Private Function Fun(A As Single, B As Integer) As Integer定义了函数Fun。调用函数Fun的过程中定义了i、j和k三个Integer型变量,则下列语句中不能正确调用函数Fun的语句是()。A. Fun 3.14, jB. K = Fun(“24”, “35”)C. Call Fun(i, 365)D. Fun (i), (j)34. 设有如下通用过程:Public Function Fun(xStr As String) As String Dim tStr As String, strL As Integer tStr = strL = Len(xStr) i = strL / 2 Do While i Val(D(j) Then temp = D(i) : D(i) = D(j) : D(j) = temp End If Next NextEnd SubPrivate Sub Insert(ByVal e As Integer, C) Dim j As Integer, k As Integer For j = LBound(C) To UBound(C) If C(j) e Then (23) Next j (24) For k = UBound(C) To j + 1 Step -1 (25) Next k C(k) = eEnd Sub本题得分三、改错题每个出错点3分,共计15分;说明:不能增删语句行和调整语句位置;写出出错点所在的行号得1分,修改正确得2分本程序的功能是生成一个n行3列的数组,并在多行文本框中输出。n通过InputBox函数输入,数组第一列元素为随机生成的1099之间的整数,第二列元素是第一列相应元素的逆序数,第三列是第一、二列对应元素的最大公约数。行号程序代码1.Option Explicit2.Dim n As Integer, a() As Integer3.Private Sub Command1_Click()4. Dim i As Integer, n As Integer5. n = InputBox(输入n:, , 3)6. Dim a(1 To n, 1 To 3)7. For i = 1 To n8. a(i, 1) = Int(Rnd * 90) + 109. a(i, 2) = nx(a(i, 1)10. a(i, 3) = gcd(a(i, 1), a(i, 2)11. Next i12.End Sub13.Private Sub Command2_Click()14. Dim i As Integer, j As Integer15. Text1 = 运行结果是: & vbCrLf16. For i = 1 To n17. For j = 1 To 318. Text1 = Text1 & Right( & Str(a(i, j), 3)19. Next j20. Text1 = Text1 & vbCrLf21. Next i22.End Sub23.Function nx(x As Integer) As Integer24. nx = (x Mod 10) * 10 + x / 1025.End Function26.Function gcd(a As Integer, b As Integer) As Integer27. Dim r As Integer28. Do29. r = a Mod b30. a = b31. b = r32. Loop Until r = 033. gcd(a,b) = b34.End Function程序设计基础VB期末试卷(答卷纸) 使用专业、班级 学号 姓名 题数一二三总分得分本题得分一、选择题每题1分,共计35分;..3.34.35.本题得分二、填空题每空2分,共计50分;(1).(2).(3).(4).(5).(6).(7).(8).(9).(10).(11).(12).(13).(14).(15).(16).(17).(18).(19).(20).(21).(22).(23).(24).(25).本题得分三、改错题每个出错点3分,共计15分;说明:写出出错点所在的行号得1分,修改正确得2分行号该行修改正确后的完整代码程序设计基础VB期末试卷(A答案) 一、选择题每题1分,共计35分;1. A2. B3. C4. A5. C6. A7. B8. B9. C10. C11. A12. A13. B14. D15. D16. B17. C18. D19. D20. C21. D22. C23. A24. D25. D26. A27.

温馨提示

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

评论

0/150

提交评论