第9章习题解答
1.思考题
(1)VB对象的3要素是指什么?它们的作用是什么? 答:对象的属性、方法、事件就称为对象的三要素。 1)属性
属性描述对象的性质或特征,即该对象是什么样的。 2)方法
方法反映对象的行为,即该对象会干什么。 3)事件
事件指明对象在什么条件下发生什么事情,即在什么条件下执行哪段代码。 (2)什么是变量的作用域?作用域有哪些类型?什么是变量的生存期?生存期有哪些类型? 答:
1) 变量的作用域是指变量的有效范围。
2) 根据作用域,变量可分为局部变量、窗体级变量、模块级变量、全局变量。 局部变量:在过程体内部定义,其作用域是从定义起到所在语句块或过程结束为止的局部范围,其他地方不能使用。
窗体级变量:是在窗体代码的通用声明区用Dim或Private关键字定义的变量,它不属于该窗体的任何过程,可以被本窗体内的所有过程访问,而不能为其他窗体或模块使用。窗体级变量与窗体的生存期一样,只要窗体不消失,它就不消失。
模块级变量:与窗体级变量同级别,它是在模块的“通用声明”区用Dim或Private关键字定义的变量。它不属于该模块的任何过程,可以被本模块内的所有过程访问,而不能用在其他模块或窗体中。
全局变量:是在窗体或模块的通用声明区用Public关键字进行定义的变量,它在整个工程的所有过程中均可使用,且在应用程序运行过程中一直存在。
3)变量的生存期表示它可以存储值的时间周期。在生存期内变量的值可以更改,但变量总是存储某些值。即指在程序执行的动态过程中,变量在哪个阶段是存在的。
4)局部变量根据生存期分为动态局部变量和静态局部变量,两者的区别是:
(a)动态局部变量的生存期是:程序执行到定义该变量的Dim语句时,在内存建立起该变量,此时该变量“诞生”了;程序继续往下执行到该变量所在的程序块(或过程)结束时,该变量“死亡”,其代表的值也不复存在。如果该变量所在过程再次执行,再次执行到定义该变量的Dim语句则一个新的变量“诞生”,与上次已“死亡”的同名的变量毫无关系。 (b)静态局部变量的生存期是:程序第一次执行到定义该变量的Static语句时,在内存建立起该变量,此时该变量“诞生”了;程序继续往下执行,甚至超出该变量所在的程序块(或过程),该变量一直存在,其代表的值也存在,只是不能使用。
(3)在同一模块、不同过程中声明的相同变量名,两者是否表示同一变量?有没有联系? 答:不是同一个变量;过程内部声明的变量是局部变量,并不能在过程范围之外访问,即使变量名相同,也是属于指定过程的独立变量,过程执行完毕立即清除。表示不同的变量,没有任何关系。
(4)VB中将数字字符串转换成数值,用什么函数?取字符串中的某几个字符,用什么函数?大小写字母间的转换用什么函数? 答:
1)将数字字符串转换成数值,用函数val()函数,如val (\
2) 取字符串中的某几个字符,用函数LEFT()函数、MID()函数和RIGHT ()。如LEFT(\
3) 大小写字母间的转换用函数Lcase()和Ucase ()。如Lcase(\ Ucase(\
(5)数据访问涉及几个组成部分?这些组成部分的作用是什么? 答:数据访问涉及3个组成部分:数据提供者(Data Provider)、数据服务提供者(Data Service Provider)、数据使用者(Data Consumer)。
1)数据提供者(Data Provider)提供数据存储的组件和数据,如普通的文本文件、主机上的复杂数据库,都是数据提供者的例子。 2)数据服务提供者(Data Service Provider)是位于数据提供者之上、从过去的数据库管理系统中分离出来、独立运行的功能组件。
3)数据使用者(Data Consumer)为任何需要访问数据的系统程序或应用程序,除了典型的数据库应用程序之外,还包括需要访问各种数据源的开发工具或语言。
2.选择题
(1)以下( B )是合法的变量名。
A.4p B.姓名 C.\年龄\ D.IfNot (2)InputBox函数的返回值类型是( D )。 A.变体型 B. 整型 C.实型 D.字符型 (3)在VB中,下面正确的逻辑表达式是( A )。
A.x>y AND y>z B.x>y>z C.x>y AND >z D.x>y &y>z (4)在窗体上画一个名称为Commandl的命令按钮,然后编写如下程序: Private Sub Command1_Click()
Static X As Integer Static Y As Integer Cls Y=1 Y=Y+5 X=5+X Print X,Y End Sub
程序运行时,3次单击命令按钮Commandl后,窗体上显示的结果为( D )。 A.15 16 B.15 6 C.15 15 D.5 6 (5)表达式3^2*2+3 MOD 10\\4的值是( C )。
A.18 B.1 C.19 D.0
(6)在窗体上画一个水平滚动条,名称为HScroll1;再画一个文本框,名称为Text1。要想使用滚动条滑块的变化量来调用文本框中文字的大小,则可满足的语句是( C )。
A.Text1.FontName= HScroll1.Max B.Text1.FontSize= HScroll1.Min C.Text1.FontSize= HScroll1.value D.Text1.FontBold= HScroll1.value (7)以下( D )不是图片框PictureBox的方法。
A.cls B.print C.pset D.ScaleMod
(8)数据访问接口ADO是Microsoft处理数据库信息的新技术,以下关于ADO技术的叙述不正确的是( D )。
A.ADO是一种ActiveX对象
B.ADO采用了OLE DB的数据访问模式
C.ADO是数据访问对象DAO、远程数据对象RDO和开放数据库互连ODBC三种方式的扩展
D.ADO Data控件不能创建与数据库的连接
(9)在Visual Basic中,ADO数据控件不能直接显示记录集中的数据,必须通过数据绑定控件来实现,下列( C )控件不能与ADO数据控件实现绑定。
A.文本框 B.标签 C.命令按钮 D.列表框
(10)通常使用( A )方法更新与数据库连接的ADO 数据控件,使之在运行时改变RecordSource属性值后,ADO数据控件的记录集也进行相应的改变。
A.Refresh方法 B.Move方法 C.Find方法 D.Clear方法