试卷代号:2231 座位号■ 中央广播电视大学2009一2010学年度第二学期“开放专科”期末考试 Visual Basic程序设计 试题 2010年7月 题号 二 三 四 五 总 分 分 数 得分 评卷人 一、单项选择题(每小题2分,共30分)】 1.在设计应用程序时,可以查看到应用程序工程中所有组成部分的窗口是()。 A.窗体布局窗口 B.代码编辑器窗口 C.属性窗口 D.工程资源管理器窗口 2.在VB6.0集成开发环境中有三种工作模式,下列不属于三种工作模式之一的是 ( )。 A.设计模式 B.中断模式 C.执行模式 D.编写代码模式 3.将调试通过的工程经“文件”菜单的“生成.exe文件”编译成exe后,将该可执行文件拿 到其它机器上不能运行的主要原因是( )。 A.缺少frm窗体文件 B.该可执行文件有病毒 C.运行的机器上无VB系统 D.以上原因都不对 4.一个VB应用程序可以包含几个vbp文件()。 A.1个 B.2个 C.可以没有 D.不受限制 5.要在窗体的标题内显示“VB编程世界”,使用的语句是(·)。 A,Forml.Print'"VB编程世界" B.Form.Print'"VB编程世界" C.Form.caption="VB编程世界" D.Forml.caption="VB编程世界" 1409
试卷代号 2 2 座位号 中央广播电视大学 0 0 2010 开放专 末考 Visual Basic 试题 2010 年7 题号 总分 分数 得分|评卷人 一、单项选择题{每小题 2分,共 0分) 1.在设计应用程序时,可以查看到应用程序工程中所有组成部分的窗口是( )。 A.窗体布局窗口 .代码编辑器窗口 C. 口D. 资源 2. 在VB6.0 三种工作 下列 于三 式之 ( )。 A.设计模式 .中断模式 c.执行模式 .编写代码模式 3. 程经 文件 菜单 将该 执行 到其它机器上不能运行的主要原因是( )。 A.缺少.f m窗体文件 .该可执行文件有病毒 c.运行的机器上无 B系统D.以上原因都不对 4. 程序 包含几个 )。 A. 个B. c.可以没有 .不受限制 5. 要在 标题 显示 程世界 .)。 A. Form1. Print"VB C. Form. caption=" VB B. Form. Print"VB D. Forml. caption= "VB 1409
6.要设置命令按钮的背景图形,必须设置的两个属性是()。 A.Style和Picture B.Style和Icon C.Caption和Picture D.Value和Icon 7.下列可作为Visual Basic变量名的是( )。 A.A(A+B) B.Alpha C.4ABC D.ABπ 8.表达式7+10Mod3*2+2( )。 A.1 卫.7 C.6 D.13 9.文本框没有()属性。 A.Text B.Name C.Caption D.BorderStyle 10.下列正确的赋值语句是( )。 A.x十y=20 B.y=X十20 C.3x=y D.s=π*r米r 11.下列关于变量的说法不正确的是( )。 A.局部变量的作用域仅限于声明它的过程 B.静态局部变量是在过程中用Static语句声明的局部变量 C.在声明它的过程执行完毕后就被释放了 D.局部变量是指那些在过程中用Dim语句或Static语句声明的变量 12.Line(100,100)-Step(600,600)将在窗体()画一直线。 A.(100,100)到(600,600) B.(100,100)到(500,500) C.(100,100)到(700,700) D.(500,500)到(600,600) l3.使用ADO数据模型时,建立Recordset和Connection对象连接的属性是()。 A.Execute B.CommandType C.Open D.ActiveConnection 14.VB程序中设置断点的按键是()。 A.F1键 B.F9键 C.F8键 D.CtrlF8键 15.下列数组声明语句,正确的是() A.Dim a[3,1To 4]As Integer B.Dim a(3 1To 4)As Integer C.Dim a(n,n)As Integer D.Dim a(3,1To 4)As Integer 1410
6. 令按 背景 必须 )。 A. Style 和Picture C. Caption 和Picture 7. 为Visual Basic A. A(A 十B) C. 4ABC 8. 式7 十10 Mod 铃2+2( )。 A. 1 C. 6 9. 没有 )属性。 A. Text C. Caption B. Style 和Icon D. Value 和Icon B. Alpha D. ABπ 巳. 7 D. 13 B. Name D. BorderStyle 10. 正确 A. 十y=20 C. 3x=y B. y=x+20 D. s=π 1 1. 不正 )。 A.局部变量的作用域仅限于声明它的过程 B. 量是 用Static 部变量 C. 在声 程执行 毕后 释放 D. 量是指那些在 用Dim 或Static 变量 12. Line(100 ,100)-Step(600 ,600) )画一直线。 A. (1 0 0 0 0 0 0 )且(10 0 0 0 C. (1 0 0 0 0 D. (500 ,500) 到(600 ,600) 13. 用ADO 立Recordset 和Connection 连接 的属 性是 A. Execute C. Open 14. VB 置断 A. F1 C. F8 15. 数组 A. Dim ,1 To 4J As Integer C. Dim a(n ,n) As Integer B. CommandType D. ActiveConnection B. F9 D. CtrlF8 B. Dim a (3 ITo 4) As Integer D. Dim a(3 , ITo 4) As Integer 1410
得分 评卷人 二、填空题(每小题2分,共20分) 1.在VB中,事件过程名由 和 构成。 2.定时器(Timer)控件可识别的事件是 ,发生该事件的时间间隔由定时器 的 属性设置。 3.控件数组的名字由 属性指定,而数组中的每个元素由 属性决定。 4.要使标签框的大小随Caption属性做自动调整,应将AutoSize属性设置为 5.如果不能事先确定变量的数据类型,则可以把它声明为 6.一般可使用 关键字声明常量。 7.在Visual Basic语言中有三种形式的循环结构。其中,若循环的次数可以适先确定,可 使用 循环;若要求先判断循环进行的条件,可使用 循环或Do循环。 8.要想在代码中给名为mytext的文本框赋予文本:我的第1个应用程序!时,应当编写 的语句是 9.在VB中,除了可以指定某个窗体作为启动对象之外,还可以指定 作为启动对象。 10. Winsock控件主要用来编制TCP/IP或 协议的通话程序。 得 分 评卷人 三、阅读程序题(共25分)》 阅读下列程序并写出程序运行结果 1.(6分) Private Sub Form_Click() Dim x As Integer Static y As Integer x=x+2 y=x+y Forml.Print "x=";x,"y=";y End Sub 程序运行后三次单击窗体,写出Forml上的输出结果。 1411
得分|评卷人 二、填空题{每小题 2分,共 0分} 1.在 B中,事件过程名由和构成。 2. 器(Timer) 间 间 时器 的属性设置。 3. 数组 个元 4. 要使 性做 动调整 应将 ze 设置 5. 能事先确定变量 则可 6. 一般 关键字声 7. 在Visual Basic 三种 若循 使用循环;若要求先判断循环进行的条件,可使用循环或 o循环。 8. 想在 为mytext 予文 第1 个应 程序 编写 的语句是 9. 某 个 对 象 之 作为启动对象。 10. Winsock 控件 要用 制TCPjIP 得分|评卷人 三、阅读程序题{共 5分} 阅读下列程序井写出程序运行结果 1. (6 Private Sub Form_ClickO Dim x As Integer Static y As Integer x=x 十2 y=x+y Form1.Print "x=";x,"y=";y 协议的通话程序。 End Sub 程序运行后三次单击窗体,写出 l上的输出结果。 1411
2.(6分) Sub test(i As Integer) i=i十4 End Sub Private Sub Form_Click() Dim x As Integer x=5 Print "x=";x Call test(x) Print "x=";x End Sub 写出程序运行时,单击窗体后显示的值。 3.(6分) Private Sub Commandl_Click() Dim s As Double Dim i As Integer s=8 i=1 Do While i<5 i=i+2 s=s十i Loop Text1.Text s End Sub 写出程序运行时,单击窗体后显示的值。 4.(7分) Private Sub Form_Click() Dim i As Integer,k As Integer,c As Integer Fori 1 To 9 If i Mod 2 =0 Then k=k十3 Else c=c+4 End If Next i Print k,c End Sub 程序运行后单击窗体,写出Forml上的输出结果。 1412
2. (6 Sub test(i As Integer) i=i+4 End Sub Private Sub Form_ClickO Dim x As Integer x = 5 Print" x="; x Call test(x) Print "x="p x End Sub 写出程序运行时,单击窗体后显示的值。 3. (6 Private Sub CommandLClickO Dim s As Double Dim i As Integer s = 8 Do While i < 5 i=i 十2 s=s+i Loop Textl. Text = s End Sub 写出程序运行时,单击窗体后显示的值。 4. (7 Private Sub Form_ClickO Dim i As Int巳ger k As Integer, c As Integer For i = 1 To 9 If i Mod 2 = 0 Then k=k 十3 Else c = End If Next i Print k , c End Sub 程序运行后单击窗体,写出 1上的输出结果。 1412
得 分 评卷人 四、完善程序题(共10分》 假设在C盘根目录中存在一个名为“学生MDB”的Access数据库,其中包含一张名为 “学生基本情况”的数据表,表中存放了学生的基本信息,如图1所示。 现在要求利用VB编写一个数据库记录增加程序,程序的运行界面如图2所示,基本逻辑 是:分别在Text1、Text2、Text3中输人学号、姓名、籍贯信息,然后点击“保存”按钮 (Command1)将该记录添加到数据库中。如果数据库中已经存在相同的学号信息,则程序应 提示用户“记录已存在,请重新输入”,并将焦点置于Text1上,等待用户修改或重新输入。当 点击退出按钮(Command2)时关闭本窗体。 字生基本药祝表 回x 学号 姓名 2009001 卢迪 天津 2009002 李进 北京 2009003 樾 河北 3DD*共有记录数:3 图1用Access创建的学生基本情况数据表 “.塘知学生记录 请输入学生基本情况信息 学号 2009001 姓名 卢迪 籍 天津 保存 退出 图2查询成绩运行界面 1413
得分|评卷人 四、完善程序题(共 0分} 假设在 C盘根目录中存在一个名为"学生 "的 c e s数据库,其中包含一张名为 "学生基本情况"的数据表,表中存放了学生的基本信息,如图 1所示。 现在要求利用 B编写一个数据库记录增加程序,程序的运行界面如图 2所示,基本逻辑 是:分别在 1、 2、 3中输入学号、姓名、籍贯信息,然后点击"保存"按钮 CCommand1) 加 到 据库 数据 经存在相 程序 提示用户"记录已存在,请重新输入飞并将焦点置于 l上,等待用户修改或重新输人。当 点击退出按钮 nd )时关闭本窗体。 1用 cc s创建的学生基本情况数据表 2查询成绩运行界面 1413
程序代码如下,请补充完整。 Private ADOcn As New Connection Private Sub Form_Load() [1] "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=学生,mdb" End Sub Private Sub Command1_Click() Dim strSQL As String Dim ADOrs As New Recordset ADOrs.ActiveConnection [2] strSQL="Select*from学生基本情况Where学号="+","十[3] 十”,n ADOrs.Open strSQL If[4] Then MsgBox"学号已经存在,请重新输入!",vbOKOnly,"信息提示" Text1.SetFocus Else strSQL="Insert Into学生基本情况(学号,姓名,籍贯)" strSQL strSQL+Values ("Textl+","+Text2 +",""Text3+ ”)" [5] Execute strSQL MsgBox"添加成功!",vbOKOnly,"信息提示" End If End Sub Private Sub Command2_Click() Unload Me End Sub 1414
程序代码如下,请补充完整。 Private ADOcn As New Connection Private Sub Form_LoadO [lJ "Provider=Microsoft. Jet. OLEDB. 4. O;Data Source=学生 mdb" End Sub Private Sub CommandLClickO Dim strSQL As String Dim ADOrs As New Recordset ADOrs. ActiveConnection = [2J strSQL = "Select 势from 基本情况Where 号=ft + It,1t十 [ 3 J 十" , ADOrs. Open strSQL If [4J Then MsgBox" ", vbOKOnly , "信息提示" Text!' SetFocus Else strSQL = "Insert Into " strSQL = strSQL Values ('''十 xt!十 + Text2 + "',-" + Text3 [5J . Execute strSQL MsgBox" ", vbOKOnly , "信息提示" End If End Sub Private Sub Command2_ClickO Unload Me End Sub 1414
得 分 评卷人 五、编写程序题(共15分) 编写一个用户界面如图3所示的列表框应用程序。 要求从文本框Txt1中输人始发地名称,然后按“添加”按钮,把该名称添加到列表框 Lst1中;当选择列表框中某一项后,按“删除”按钮,则从列表框中删除该项;当选择列表框中 某一项后,按“修改”按钮,把列表框中选取的项送往文本框且“修改”按钮变为“修改确认”。在 文本框的内容修改好后,按“修改确认”按钮,再把文本框中修改后的信息送到列表框且“修改 确认”按钮变为“修改”。 北京天律 Textl Listl Commandl Command2 Command3 图3程序运行界面 1415
得分|评卷入 五、编写程序题{共 编写一个用户界面如图 3所示的列表框应用程序 要求从文本框 tl中输入始发地名称,然后按"添加"按钮,把该名称添加到列表框 Listl 某一项 删除 按钮 删 除 某一项后,按"修改"按钮,把列表框中选取的项送往文本框且"修改"按钮变为"修改确认"。在 文本框的内容修改好后,按"修改确认"按钮,再把文本框中修改后的信息送到列表框且"修改 确认"按钮变为"修改"。 Listl Text! Commandl Command2 Command3 3程序运行界面 1415
试卷代号:2231 中央广播电视大学2009一2010学年度第二学期“开放专科”期末考试 Visual Basic程序设计试题答案及评分标准 (供参考) 2010年7月 一、单项选择题(每小题2分,共30分) 1.D 2.D 3.C 4.A 5.D 6.A 7.B 8.D 9.C 10.B 11.C 12.C 13.D 14.B 15.D 二、填空题(每小题2分,共20分) 1.对象 事件 2.Timer Interval 3.Name Index 4.True 5.变体型或Variant 6.Const 7.For While 8.mytext.text="我的第1个应用程序!" 9.Main子过程 10.UDP 三、阅读程序题(共25分) 1.(6分) x=2 y=2 x=2 y=4 x=2 y=6 2.(6分) x=5 x=9 3.(6分) 16 4.(7分) 1220 1416
试卷代号 2 2 3 中央广播电视大学 0 0 2010 度 第二学 放专 Visual Basic 设计 评分标准 (供参考) 2010 年7 一、单项选择题(每小题 1. D 2. D 3. C 6. A 7. B 8. D l 1. C 12.C 13.D 二、填空题(每小题 2 0 1.对象事件 2. Timer Interval 3. Name Index 4. True 5. 6. Const 7. For While 8. mytext. text=" 的第1 9. Main 10. UDP 三、阅读程序题(共 1. (6 x= 2 y= 2 x= 2 y= 4 x= 2 y= 6 2. (6 x= 5 x= 9 3. (6 16 4. (7 12 20 1416 4. A 9. C 14. B 5. D 10. B 15. D
四、完善程序题(共10分)】 [1]ADOcn.Open [2]ADOcn [3]Textl [4]Not ADOrs.EOF [5]ADOcn 五、编写程序题(共15分)】 参考答案: Private Sub Form_Load() Listl.AddItem"北京一上海" Listl.AddItem"北京一广州" Listl..AddItem"北京一四川" Listl..AddItem"北京-西安" Listl.AddItem"北京一重庆" List1.AddItem"北京天津" End Sub Private Sub Commandl_Click() If Text1.Text <>"Then Listl.AddItem Text1.Text Text1.Text =" Else MsgBox"请在文本框中输人信息!" End If End Sub Private Sub Command2_Click() List1.Removeltem Listl.ListIndex End Sub 1417
四、完善程序题{共 [IJ ADOcn. Open [2J ADOcn [3J Textl [4J Not ADOrs. EOF [5J ADOcn 五、编写程序题(共 参考答案: Private Sub Form_LoadO List!. AddItem "北京一上海" List!. AddItem "北京一广州" List!. AddItem "北京一四川" List!. AddItem "北京一西安" List!. AddItem "北京一重庆" List!. AddItem "北京天津" End Sub Private Sub CommandLClick() If Text!. Text <> "" Then List!. AddItem Text!. Text Text 1. Text = "" Else MsgBox" 在文本框 入信 End If End Sub Private Sub Command2一ClickO List 1. RemoveItem List!. ListIndex End Sub 1417
Private Sub Command3_Click() If Command3.Caption="修改"Then Textl.Text Listl.Text Text1.SetFocus Commandl.Enabled =False Command2.Enabled False Command3.Caption="修改确认" Else Listl.List(Listl.ListIndex)=Textl.Text Commandl.Enabled True Command2.Enabled True Textl.Text ="m Command3.Caption="修改" End If End Sub 1418
Private Sub Command3_ClickO If Command3. Caption = "修改" Then Text!. Text = List!. Text Text!. SetFocus Command!. Enabled = False Command2. Enabled = False Command3. Caption = "修改确认" Else List!. List ( List!. ListIndex) = Text!. Text Command!. Enabled = True Command2. Enabled = True Text!. Text =川 Command3. Caption = "修改" End If End Sub 1418