2013.01VB程序设计电大期末考试试题

更新时间:2024-01-13 08:22:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

试卷代号 :2231

中央广播电视大学 2012-2013学年第一学期\开放专科\期末考试 Visual Basic 程序设计试题 2013年 1月

一、单项选择题(每小题2分,共30分}

1.与传统的程序设计语宵相比,VisualBasic最突出的特点是( C )。 A. 结构化程序设计B.程序开发环境C.事件驱动的编程机制 D程序调试技术 2.在VB6.0集成开发环境中有三种工作模式,下列不属于三种工作模式之一的是( D ) A设计模式 B中断模式c.执行模式 D编写代码模式 3. 下列关于窗体的说法不正确的是( B )。

A.窗体的标题由Caption属性确定 B.窗体的Name属性Caption属性相同

C.窗体的背景图片由其Picture属性设成D.通过设置Icon属性可使窗体获得最小化时的图标 4.工程文件的后缀是( B )。 A.frm B..vbp c.bas D..cls

5.要在窗体的标题内显示\,使用的语句是( D )。 A.Form1.Print\ B. Form.Print\

C.Form.caption=\ D.Form1.caption=\

6.在设计动画时,用时钟控件来控制动画速度的属性是( B )。 A.Enab led B.Interval C.Timer D.Move 7.关于语句行,下列说法正确的是( D )。

A一行只能写一条语句 B.长度不能超过255个学符 C.每行的首学符必须大写 D一条语句可以分多行书写

8.假定已在窗体上画了多个控件,井有一个控件是活动的,为了在属性窗口中设置窗体的属性,预先应执行的操作是( A )。

A.单击窗体上没有控件的地方B.单击任一个控件C不执转任何操作D.双击窗体的标题栏 9.下列关于变量的说法不正确的是( D )。

A.局部变量是指那要是在过程中用Dim语句或Static语句声明的变量 B.局部变量的作用域仅限于声明它的过程

C.静态局部变量是在过程中用Static语句声明的 D.局部变量在声明它的过程孰行完毕后就被释放了

10.使用ADO数据模型时,建立Recordset和Connection对象连接的属性是( C )。 A.Execute B.Open C.ActiveConnection D.CommandType

11.DimA(1 To 6,6)As String定义的数组包含的元素个数是( C )。 A.36 B.49 C.42 D.50

12.VB程序中逐语句调试的按键是( B )。 A.F1键 B.F8键 C.F9键 D.Ctrl+F9键 13.不属于VB数据库引擎的是( C )。

A.ODBC B.Jet引擎 C.BDE D.OLEDB

14.一旦数据到达,将首先触发Winsock控件的( D )。

A.DataGet事件 B.ConnectonRequest C.DataSend事件 D.DataArrival事件 15.VB程序中通常不会产生错误提示的( C )。

A.编译错误B.实时错误 C.逻辑错误D.运行时错误 二、填空题{每小霆2分,共20分

16.控件数组的名字由Name属性指定,而数组中的每个元素由lndex属性决定。

17.全局变量在整个应用程序中有效,一般在标准模块中使理PubIic语句声明。

18.在VisualBasic语言中有三种形式的循环结构。其中,若循环的次数可以适先确定,可使用For循环;若要求先到新循环进行的条件,可使用While循环戒Do循环。

19.要使标签框的大小随Caption属住做自动调擦,应将AutoSize属姓设置为True。 20.表达式14/2-2'3*7 MOD6的值是5 21.Winsock控件主要用来编制TCP/IP或UDP协议的通话程序。

22.若窗体Forml左上角坐栋为(0,600),右下角的坐标为(800,-400)0照X轴的向向右,Y轴的正向上 23.列表框按件中最后一项的序号等于ListCount属性减1 24.VB中,Access数据库属于本地数据库。(说明是哪种数据库类型〉 25.VB应用程序与数据库进行通信的主要机制称为数据库引擎 三、阅读程序题{共25分}

阅读下列程序并写程序运行结果。 26.(6分)

Private Sub Form_ClickO Dim x as integer Static y As Integer

X=x十3 y=x十y

Forml.Print..x=\”y=”;y End Sub

程序运行后三次单击窗体,写出Forml上的输出结果: x=3 y=3 x=3 y=6 x=3 y=9 27.(6分〉

Sub Change(ByVal x AsInteger,ByVal y AsInteger) Dim t As Integer T=x X=y y=t Printx,y EndSub

Private Sub Form_ClickO Dim a As Integer,b As Integer a5:b=10 Change a,b Print a,b EndSub

写出程序运行时单击窗体后,Form1上的输出结果。 10 5 5 10 28.(6分〉

Private Sub Form_ClickO

Dim I As Integer,k As Integer,c As Integer For i=1To7

If I Mod2=0 Then Else c=c+4 End If Nexti Print k,c End Sub

写出程序运行时单击窗体后,窗体Form1上的结果。 9 16 29.(7分〉

Private Sub Form_ClickO Dim A(1To3) As Stríng Dim c As Integer Dirn j As Integer A(1)=“20” A(2)=“40” A(3)=\c=2

Forj=1 To 3 C=c十Val(A(j)) Next j Print c End Sub

写出程序运行时单击窗体后,窗体Form1上的结果。 122 四、完善程序题{共10分}

3O. 假设用Access创建了一个名为“学生.MDB”的数据库,并在其中创建了一张名为“学生基本情况”的数据表,表中存放了学生的基本信息,如图1所示。

现在要求利用 VB编写一个数据库记录增加程序,程序的运行界前如图 2所示,基本逻辑是:在\学号”中选择学号,则在 Text1中自动显示姓名,在\课程号\中选择课程号,则在 Text2中自动显示课程名称,在 Text3中输入成绩,然后点击\确认\按钮,若数据库中不存在该记录,则将该记录添加到数据库中,否则,如果数据库中已经存在该学号、该课程的成绩,则程序应提示用户\该记录巳经存在,不能继续增加”。当点击\返回\按钮 (Command2)时关闭本窗体。

图1 .

图2

增加新记录窗体程序代码如下,请补充完整。 Private Sub Form_LoadO

Dim ADOrs As New Recordset ADOrs.ActiveConnectíon=ADOcn ADOrs. Open 'Select学号 From学生情况表 Order By学号\Combol. Clear

Do While Not ADOrs. EOF

Combol. Addltem Trim(ADOrs. Fields(\学号\ ADOrs. MoveNext Loop

ADOrs. Close

ADOrs. Open \课程号 From课程情况表 Order By课程号\ Combo2. Clear

Do While Not ADOrs. EOF

Combo2. Addltem Trim(ADOrs. Fields(“课程号\ ADOrs. MoveNext Loop

ADOrs. Close Textl. Text = ” \ Text2. Text= ” \ Text3. Text =\End Sub

Private Sub Command2_ClickO Unload Me End Sub

Private Sub Combol_ClickO

Dim ADOrs As New Recordset ADOrs. ActiveConnection = ADOcn

ADOrs. Open “select姓名 from学生情况进 where学号 =”+ Combo1 . Text+”” If Not ADOrs. EOF Then Text1.text = ADOrs(\姓名\ End If End Sub

Private Sub Combo2_ClickO Dim ADOrs As New Recordset

ADOrs. ActiveConnection = ADOcn

ADOrs. Open “select课程名from课程情况表where课程号=”十Combo2. Text+”” If Not ADOrs. EOF Then

Text2. Text = ADOrs(\课程名\ End If End Sub

Prívate Sub Commandl_ClickO Dim strSQL As String

Dim ADOrs As New Recordset

ADOrs. ActiveConnection = ADOcn

strSQL = “ Select * from学生成绩表\

strSQL = strSQL十 “Where学号=”十Combo1.Text十”” strSQL = strSQL十 “ And课程号=”十Combo2.Text十”” ADOrs. Open strSQL If Not ADOrs. EOF Then

Ms gBοx”该记隶己经存在,不能继续增如”,vbCritical+vbOKOnly Exitt Sub End If

strSQL = “Insert Into学生或绩表(学号,课程号,成绩) strSQL= strSQL十\“十 Combo1.Text十”,”

strSQL = strSQL十 Combo2. Text 十”,\十 Str(Val(Text3. Text)) 十 \” ADOcn.Execute strSQL

Ms gBox \巳成功添如新纪录” ,vbCritical+vbOKOnly End Sub

五、编写程序题{共15分i

31.请根据下列描述编写购物优惠程序。某商场为了如速提成商品流通,采用购物打折的优惠办法,每位顾客一次购物(1)在700元以上者,按九折优惠;(3)1000元以上者,按八折优惠;(4)2000元以上者按七折优惠。在窗体上添加商个文本框和一个命令按钮,要求在Text1中输入购物商品总金额,单击命令按钮,在Text2中输出优惠价。程序运行结果如图3所示。

图3

Private Sub Command1_ClickO Dim x As Single,y As Single x=Val(Text1.Text) If x < 700 Then Y=x Else

If x <1000 Then

y=0.9*X Else

If x< 2000 Then Y=O.8*X Else

Y=O.7*x End If End If End If

Text2.Text=y End Sub

本文来源:https://www.bwwdw.com/article/85eo.html

Top