vb典型考题分析与解答复习重点_第1页
vb典型考题分析与解答复习重点_第2页
vb典型考题分析与解答复习重点_第3页
vb典型考题分析与解答复习重点_第4页
vb典型考题分析与解答复习重点_第5页
已阅读5页,还剩75页未读 继续免费阅读

下载本文档

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

文档简介

第1章VisualBasic程序开发环境

1.1典型考题分析与解答

1.VisualBasic可视化程序设计强调的是。

A.过程的模块化B.控件的模块化C.对象的模块化D.程序的模块化

【分析】本题主要是考核学习者掌握关于传统的结构化编程思想与面向对象编程

思想的区别。

传统的程序设计语言是面向过程的(称之为过程式语言)。这种程序设计语言强调

的是“过程的模块化"。而VisualBasic“可视化程序设计”是面向对象的。

控件也是对象,在B和C选项中,显然“对象的模块化”要比“控件的模块化”

更准确。至于“程序的模块化”是软件工程的一个理论,是一个指导软件设计的

原则,作为本题解答似乎也对,但有些勉强。

结构化编程思想强调的是“过程的模块化”,面向对象强调的是“对象的模块

化”。

【解答】Co

2.VisualBasic6.0包括三个版本,功能依次增强,分别是:、、

【分析】这是一填空题,主要是考核学习者对VisualBasic6.0的版本特性的

了解。VisualBasic6.0的大多数应用程序可在这三个版本中通用。不同版本

的功能不同,面向的用户也不同。

【解答】学习版;专业版;企业版。

3.VisualBasic应用程序的运行是。

A.从第一个建立的窗体模块开始执行B.以最后建立的窗体模块结束

C.程序执行顺序不是预先完全确定D.执行顺序是预先确定好的

【分析】本题主要是考核学习者对“事件驱动编程机制”这一特点的理解。

许多程序是从第一个建立的窗体模块开始执行,但VisualBasic还允许设置

某一个窗体为启动窗体;在任何一个窗体模块中,如果执行到END命令都会结束

程序的运行。可见A、B不是本题正确答案。

回顾一下教材中的介绍,在一个用户界面上,有许多选项、按钮,并没有规定要

先选择哪一个选项,或先单击哪一个按钮,可以看出程序执行的顺序不是预先确

定好的,选项D的说法不正确。

事件驱动编程与传统的线性编程是不同的,传统程序以线性方式进行,是顺序执

行的,程序有明显的起点和终点。事件驱动程序运行时等待事件被触发,执行的

顺序在很大程度上是由用户的操作决定的,不可能事先完全确定,程序没有明显

的起点和终点。

【解答】Co

4.在编写程序代码时,引用未定义的变量时要求弹出警告信息对话框。这要选定

复选框[要求变量声明],它在[选项]对话框的内。

A.通用B.环境C.编辑器D.编辑器格式

【分析】本题主要是考核学习者掌握VisualBasic6.0中对话框的特性及操作

方法,凡熟悉微软产品的人都知道:微软的大部分软件都能定制适合自己的“选

项”对话框,VisualBasic也类似,可以在对话框内定制程序设计时环境的支

持类别。

【解答】Co

5.用VisualBasic6.0设计出来的图形对象的程序代码是由Visual.Basic

自动并□

【分析】这是一填空题,主要是是考核学习者对对VisualBasic6.0的功能的

了解。VisualBasic6.0的这一特点也正是导致VisualBasic6.0可以成为…

流行编程语言的原因。

【解答】生成;进行封装。

6.实现Windows应用程序之间信息共享的技术是0

A.开放式数据链接功能B.对象链接与嵌入

C.动态链接库D.以上三项都是

【分析】本题主要是考核学习者对VisualBasic特点的理解与掌握,考核对

Windows环境下程序设计若干新技术的理解。教材中介绍了VisualBasic的8

个特点,其中的开放式数据链接功能是指用访问或建立链接的方式使用数据库的

数据,并不能使数据库访问VisualBasic中的数据,是单向的。动态链接是

使用VisualBasic应用程序调用其他语言编写的函数,也是单向的;只有对

象链接与嵌入技术是将每个应用程序看作一个对象,将不同的对象链接起来,实

现不同应用程序之间的信息共享。

【解答】Bo

7.“动态数据交换”的英文缩写是o

A.ODBCB.DDEC.OLED.DLL

【分析】本题主要是考核学习者掌握VisualBasic中专有名词的英文缩写的含

义,实际上也在考核学习者对常用专有名词英文单词掌握的程度。题中给出的4

个选项的缩写含义分别是:

ODBC:OpenDataBaseConnectivity开放式数据链接

DDE:DynamicDataExchange动态数据交换

OLE:ObjectLinkingAndElnbeding对象链接与嵌入

DLL:DynamicLinkingLibrary动态链接库

【解答】Bo

8.用户在屏幕上画出应用程序界面,并设置好对象的属性,系统便可以自动生

成程序代码,这称为o

A.面向对象的程序设计B.结构化程序设计

C.事件驱动的编程机制D.可视化程序设计

【分析】本题主要是考核学习者对VisualBasic6.0中窗体设计器功能的理解。

VisualBasic6.0集成开发工具利用窗体设计器设计应用程序界面。用户可将

工具箱的控件添加到窗体,创建应用程序的外观;利用属性窗口为控件设置各种

属性。系统便可以自动生成这些程序代码。因此,称为可视化程序设计。

【解答】D。

9.默认时,VisualBasic6.0的集成开发环境为传统的界面。执行—

菜单下的命令,弹出对话框,选择选项卡,选中,可以定制界

面,但必须一才能生效。

【分析】本题主要是考核学习者掌握开发环境的定制。传统的Windows环境大都

可以在“选项”对话框内定制自己需要的环境。

【解答】多文档(或填写MDI);工具;选项;选项;高级;单文档(或填写

SDI);重启。

10.VisualBasic程序设计采用的是编程机制。

A可视化B.面向对象C.事件驱动D.过程结构化

【分析】本题主要是考核学习者对VisualBasic基本特点的理解与掌握。可视

化是一种程序设计技术,它把繁琐、复杂的工作由系统完成,从而减轻程序设计

人员编写代码的工作量;面向对象是一种程序设计方法,这种方法将数据和代码

封装起来而成为对象;事件驱动是一种编程机制,它由事件的触发驱动程序运行:

过程结构化则是传统的“面向过程”程序设计语言的编程思想。

【解答】Co

【解答】Co

11.在[视图]菜单的子菜单中不能进入下列哪一个编辑器的窗口。

A.[代码编辑器]窗口B.[菜单编辑器]

C.[工程资源管理器]窗口D.[窗体设计器]窗口

【分析】本题主要是考核学习者掌握代码编辑器的正确使用。代码编辑器窗口

编辑程序代码,菜单编辑器窗口设计程序的菜单,工程资源管理器管理程序的窗

体和模块,窗体设计器窗口设计程序的界面。其中菜单编辑器窗口必须激活窗体,

在[工具]菜单下才能进行设计。

【解答】Bo

12.VisualBasic应用程序执行的特点是。

【分析】由于VisualBasic是面向对象的可视化程序设计语言,采用事件驱动

的编程机制。VisualBasic应用程序的执行不是顺序执行方式。

【解答】“由用户触发某个事件来执行相应的过程,从而完成某种特定的功能”。

13.VisualBasic应用程序的运行模式是。

【分析】本题主要是考核学习者掌握VisualBasic中应用程序的运行模式。

我们知道,用高级语言编写的程序的执行方式有两种,解释执行方式和编译执行

方式。VisualBasic应用程序的运行模式则是二者兼有。如果在VisualBasic

的开发环境中单击工具栏中的“启动”按钮,或按下F5功能键来运行程序,这

时是解释方式执行程序;如果将应用程序“打包”生成可执行文件,再执行这个

可执行文件,这时是编译方式执行程序。

【解答】“既有解释运行模式,又有编译运行模式”。

第2章对象及其操作

2.1典型考题分析与解答

1.[属性]窗口主要是针对窗体和控件设置的。在VisualBasic中,窗体和控件

被称为o每个对象都可以用一组属性来刻画其特征,而[属性]窗口就是

用来设置窗体或窗体中控件属性的。

【分析】本题主要是考核学习者对对象与属性这两个基本概念的理解与掌握。

(1)对象:从广义上来说,对象是客观事物的一个实体。在可视化编程语言中,

对象分为两类,一类称为预定义对象,预定义对象由系统提供,可以直接使用或

对其进行操作,如工具箱中的控件、窗体和菜单等,另一类称为自定义对象,由

用户自行定义。

(2)属性:属性是一个对象的特性,不同的对象有不同的属性。对象常见的属

性有标题(Caption)、名称(Name)、颜色(Color)、字体(Font)、是否可

见(Visible)等。通过修改对象的属性,可以改变对象的外观和功能。

属性可以在设计阶段通过属性窗口进行设置,也可以在运行阶段通过代码进行设

置。其中在代码中设置的语法格式为

对象名.属性名=属性值

例如:在窗体上加入一个文本框(TextBox)o名称为“Textl”,文本框内容是

“GoodMorning”。则用下列语句进行设置

Textl.text="GoodMorning”

【解答】对象

2.关于VisualBasic“方法”概念的叙述错误的是。

A.方法是对象的一部分B.方法是预先规定好的操作

C.方法是对事件的响应D.方法用于完成某些特定功能

【分析】本题主要是考核学习者掌握对事件方法这一概念的理解。

这个题目有一定难度。由于我们对事件方法的概念、事件方法与事件过程的区别

不一定记得很清楚,这样会觉得几个选项好像都对。尤其是选项A和C让人觉得

似对似错。

因为对象、事件和方法三者之间既有联系也有区别。首先,我们要理解其相互之

间的区别:对象的属性是描述对象的一组特征。如设置对象的名称、标题、颜色、

大小等,有的可直接在设计界面时通过属性窗口进行设置,有的可以在事件过程

或通用过程代码中进行设置。对象的方法是在对象上实施某种操作的功能,不

能在设计界面时调用对象方法,一般在过程代码中可任意调用,根据需要还可以

添加适当的参数。其次是对象、事件和方法三者之间的联系:在VisualBasic

编程中,完成某种功能可通过触发对象事件和调用对象方法,而触发事件和调用

对象方法都必须基于某个对象。触发某个事件实际上就是执行一个事件过程代码

段,在该代码段中又可以任意调用对象方法,而调用对象方法不可能触发某个事

件。

例如,在窗体上添加一个命令按钮,编写一个响应Commandl的单击(Click)事

件过程如下:

PrivateSubCommand1_C1ick()

Commandl.Caption="确定"

Form2.Show

EndSub

上述代码段表明单击对象按钮Commandl触发单击事件,即执行上述代码。在执

行上述事件过程中又调用了显示窗体Form2的方法。

由上述的内容的理解后,我们再来分析选项A时,要回忆对象的概念。对象是属

性、方法和事件的集成。可见选项A说法正确。

接下来思考经常用到的Print方法,Print方法用来输出字符串、变量、表达式

的值,也就是先完成输出这一功能。可以确定选项D说法正确,执行Print方法

时,我们不必考虑实现输出的具体步骤,可见Print方法的操作步骤是系统规定

好的。由此确定选项B的说法正确。分析选项C,响应一个事件是执行一个程序

段,这样的程序段叫事件过程,由此判断出方法不能响应事件。也可以这样想:

响应事件的程序代码是由用户编写的,而方法的实现步骤是系统预先规定好的,

由此推断出方法不能响应事件。

【解答】C

3.[属性]窗口中[按分类序]标签页内,对象属性分为多类。其中对象名属于—

类,宽度属于,背景颜色属于,是否可显示属于类。

【分析】本题主要是考核学习者掌握“属性窗口列表项”的分类。属性分类可以

使程序员更易找到要设置的属性值。

【解答】杂项;位置;外观;行为

4.设置对象的属性是程序设计的重要步骤,关于“属性”的说明错误的

是o

A.属性是一组可以由用户定义的数据B.属性名称是由用户定义确定的

C.属性用来描述形象的性质D.同一种类型的对象具有相同的属性

【分析】本题主要是考核学习者掌握对象和对象属性的基础知识。

解题时,要分清每一个叙述中提到的“属性”是指“属性项”还是“属性值”。

选项A说的是:属性是一组数据。这里“属性”是指属性值,属性是由用户定义

的,正确。

选项B说的是:属性的名称,属性的名称是由系统预先定义的,错误。

选项C和D中的属性不是指Name属性,而是泛泛地指属性值。这两种说法也都

是正确的。

【解答】B

5.窗体中含有一个命令按钮控件comAbout(按钮标题显示“关于…”),代码

窗口中含有如下代码:

PrivateSubcomAbout_Click0

Form2.Show

EndSub

程序执行时,单击“关于…”按钮,显示Form2窗体。在这一段描述中comAbout>

"关于…"、Click.Show分别为o

A.属性值、对象、方法、事件B.对象、方法、事件、属性值

C.属性值、方法、对象、事件D.对象、属性值、事件、方法

【分析】本题主要是通过实例进一步考核学习者对象、属性、事件、方法这几个

概念的理解。对象是1个实体,本题中2个窗体、1个按钮都是对象;属性描述

对象的特征;事件是对相应对象操作,在触发后可以执行一段程序代码。方法是

某一个对象所能执行的操作。“关于...”是按钮对象comAbout的标题属性值,

描述按钮显示的字符串。Click是按钮控件所能响应的单击事件。Show方法是窗

体所能执行的显示操作。用户单击“关于按钮时触发Click事件,执行对

应的过程,调用Form2的Show方法,显示Form2窗体。

【解答】D

6.下列各个窗体的属性中与边框类型属性(BorderStyle)的设置值无关的

是o

A.MaxButtonB.ControlBoxC.MinButtonD.WindowState

【分析】本题主要是考核学习者掌握窗体的属性。当边框类型属性值为

“O-None”时,表示窗体无边框。此时窗体自然没有最大化、最小化按钮、系统

菜单,这3个窗体属性被忽略,不起作用。WindowState属性描述窗体处于什么

操作状态(最大化,最小化,正常3种状态),与窗体是什么类型无关。

【解答】D

7.下列关于“面向对象”编程的叙述错误的是。

A.属性是描述对象的数据B.方法指示对象的行为

C.事件是能够被对象识别的动作D.VisualBasic程序的运行机制是“面向对

象”

【分析】本题主要是考核学习者掌握对象的概念及“面向对象”编程的基础知

识。

本题的解答比较容易。首先要理解对象的概念,明确对象的内涵。

“对象是一些属性、方法和事件的集成”,选项A、B、C正确描述了对象的这3

方面内容,而且描述正确。

“面向对象”是一种程序设计思想(编程技术),“可视化”是一种程序设计方

法,“事件驱动”是程序的运行机制。所以选项D的叙述错误。

【解答】D

8.下列叙述中正确的是o

A.属性值是一种数值型或字符型的数据

B.属性是描述对象特征的一组数据,这组数据是对象的一部分

C.所有的控件都有Name和Caption属性

D.如果属性是数值类型,则可以给这样的属性赋任意的整数值

【分析】本题主要是考核学习者掌握“属性”的特性及使用。对于题目已给出的

选项中:

选项A错误。属性值除了数值型和字符型外,还有逻辑类型数据。比如命令按钮

的Visible属性,属性值是逻辑型,即取值为True或False

选项B正确。属性是用来描述对象的外观和行为,即描述对象特征的。对象是数

据、文件和方法的集成。所以描述对象的这种数据是对象的一部分。

选项C错误。所有的控件都有Name属性,但不是所有的控件都有Caption属性。

文本框控件就没有Caption属性。

选项D错误。数值类型的属性取值一般有一定的范围限制,如窗体的

Bordes_Style(边框类型)属性,值只能是0〜52整数。

【解答】B

9.下列语句中,不能触发命令按钮单击事件的语句是o

A.Command1.Enabled=TrueB.Commandl.Value=True

C.Commandl_ClickD.命令按钮Commandl获得焦点后按Enter键

【分析】命令按钮的Value属性用来确定命令按钮是否被选中;Enabled属性用

来确定一个对象是否响应用户生成事件。从属性的作用可判断出A是本题的解

答。C与D的方法是正确的。

【解答】A

10.下列叙述中正确的是o

A.任何一个对象的所有属性既可在属性窗口中设置,也可以用程序代码方式设

B.属性窗口中设置的属性是在设计阶段完成的,因而这些属性值不能改变

C.程序中通过编程设置属性是在运行阶段给属性赋值

D.用程序方式给属性赋值的格式是“属性名=属性值”

【分析】本题主要是考核学习者掌握对属性的熟悉和理解程度。

选项A错误。比如Name属性只能在属性窗口中设置,不能用程序方式设置。

选项B错误。比如Label的Caption属性可以先在窗体窗口中设置为“输入”,

运行过程中可以用Label,Caption等于运算结果,语句将改变Caption属性值。

选项C正确。控件的许多属性都可以在运行阶段赋值,这样做使得控件的运用更

加灵活多变。

选项D错误。用程序方式给属性赋值的格式是:对象属性名=属性值。

【解答】C

11.要想改变一个窗体的标题内容,则应设置以下哪个属性的值______o

A.NameB.FontNameC.CaptionD.Text

【分析】Name为所有控件对象的名称;FontName为可以显示内容的控件对象的

字体名称;Caption属性为控件显示的内容,在本题中的窗体的标题显示就是要

设置此属性;Text为几个特殊控件对象显示的内容。

【解答】C

12.不是只适用于窗体对象的属性是o

A.Icon(图标)B.最大、最小化按钮

C.ControlBox(控制框)D.Font(字体)

【分析】图标属性用来设置窗体最小化时的图标。最大、最小化按钮属性用来显

示窗体右上角的最大、最小化按钮。控制框属性用来设置窗口控制框的状态。字

体属性用来设置输出字符的各种特性,包括字体、大小,可以适用于窗体和大部

分控件中。

【解答】D

13.下列各个窗口属性值的设置方法中,通过在属性窗口中选择设置类型值的

是o

A.AutoRedraw(自动重画)B.字体属性设置

C.Height、Width(宽、高)D.Icon(图标)

【分析】本题主要是考核学习者掌握如何在属性窗口中选择设置类型值。

自动重画属性是布尔类型值,字体属性是弹出属性对话框来设置的,高、宽属性

是通过输入数值设置的,图标属性是通过弹出“加载图标”对话框来引入图标文

件的。

【解答】A

14.设置窗体外观效果所使用的属性项是,设置窗体是否可被移动的属

性项是o

【分析】使用窗体时,这两个属性通常使用系统的默认值,所以平时用的不多,

有些学习者可能不太熟悉。

设置窗体的外观效果的属性项是Appearance,数值类型,取值0表示平面效果,

取值1表示立体效果。设置窗体是否可被移动的属性项是Moveable,逻辑类型,

取值True表示窗体可移动,取值False表示窗体不能移动。

【解答】"Appearance";"Moveable"

第3章数据类型及运算符与表达式

3.1典型考题分析与解答

1.有下列代码:

ConstPI=3.1415925

ConstNUM=5*PI

ConstONE&=1

ConstTW0#=2

ConstSH0W=//InputError”

则下列赋值语句中可能产生不兼容的是。

A.X!=NUMB.DimXAsLong

C.X%=TW0D.X$=SH0W

【分析】本题主要是考核学习者对符号常量和类型说明符的使用。如果不使用类

型说明符,则根据表达式的求值结果确定常量类型。“5*PI”是数值表达式按最

简单的类型表示这个常数,即单精度浮点数。ONE、TWO分别是长整型数和整型

数。SHOW是字符串表达式的求值结果,是字符串型数据。A项中X被说明为单精

度浮点数。B项中X被说明为长整型数。C项中的X是整型数,不能被赋给双精

度浮点数。D项中的X为字符串型数据。

【解答】C

2.下列VisualBasic的变量名中,合法的是。

A.User&nameB.5PasswordC._countD.Num

【分析】本题主要是考核学习者掌握是否掌握变量名的命名规则。变量是指在程

序运行过程中其值可以改变的量,是用于存储数据的内存单元。根据存储的数据

不同,变量可以分为不同的数据类型。变量的具体命名规则主要有:

(1)第一个字符必须是字母或下画线;

(2)长度不超过255个字符;

(3)不可以包含小数点或者内嵌的类型声明字符;

(4)不能使用关键字。

因此,变量名必须由字母、数字、下画线组成。A项中含有的不属于这3

类。B项中数字“5”不能打头。C项中下划线不能在首字符。

【解答】D

3.定义过程的格式中Static关键字的作用是指定过程中的局部变量在内存中的

存储方式。若使用了Static关键字,则o

A.每次调用此过程,该过程的局部变量都会被重新初始化

B.在本过程中使用到的,在其他过程中定义的变量也为Static型

C.每次调用该过程时,该过程中的局部变量的值保持上一次调用后的值

D.定义了该过程中的局部变量为“动态”变量

【分析】本题主要是考核学习者对“静态”变量和“动态”变量概念的理解。

Static关键字用于指定局部变量在内存中的存储方式。变量的存储方式有2种:

静态的和动态的。所谓静态存储方式是指当过程运行完毕后,变量所占内存单元

不释放,而变量的值被保存下来,该变量被称为静态变量;所谓动态存储方式是

指过程运行完毕后,变量所占内存单元即释放出来(被系统收回),因而变量不

复存在,该变量称为动态变量。

选项A错误。Static(静态)型变量所占储存空间只能初始化一次,且变量的值

在整个程序运行期间都存在。

选项B错误。Static关键字对在过程之外定义的变量没有影响。

选项C正确。Static变量型在过程执行完毕后不释放所占的存储单元,因而该

变量在每次调用时不会重新初始化,而保持上一次调用后的值。

选项D错误。Static关键字是定义该过程中的局部变量为静态变量,否则为动

态变量。

【解答】C

4.VisualBasic规定,不同类型的数据占用存储空间的长度是不同的。下列各

组数据类型中,满足占用存储空间从小到大顺序排列的是o

A.Byte,Integer,Long,DoubleB.Byte,Integer,Double,Boolean

C.Boolean,Byte,Integer,DoubleD.Boolean,Byte,Integer,Long

【分析】本题主要是考核学习者掌握不同类型的数据与占用内存的关系。Byte

型占用1个字节,Boolean型和Integer型占用2个字节,Long型占用4个字节,

Double型占用8个字节。

【解答】A

5.声明一个变量为局部变量(私有变量)应该用关键字。

A.DimB.PrivateC.StaticD.Public

【分析】本题主要是考核学习者对变量声明及其显式变量声明语句中关键字的含

义的理解。

变量的声明有显示声明、隐式声明及强制声明3类。

(1)显示声明

格式:Dim

第4章数据输入输出

典型考题分析与解答

1.阅读事件过程,回答问题。

PrivateSubCommand1_Click()

x=InputBox("请输入x的值;”)

y=Textl.Text

z=x+y

Printz

EndSub

在InputBox函数弹出的对话框中输入123,在文本框Textl中输入456。单击

命令按钮Commandl后,立即窗口上显示出。

A.123B.579C.123456D.错误信息

【分析】本题主要是考核学习者掌握InputBox函数接收到的信息的数据类型、

文本框控件Text属性值的类型以及字符型数据相加的规则。

程序中,InputBox函数接收到的数据是字符类型,所以x是字符类型;文本框

的Text属性值是字符类型,所以y是字符类型,两个字符串相加进行的是“字

符串连接”运算。

【解答】C

2.在窗体上画一个命令按钮(名称为Commandl),然后编写如下事件过程:

PrivateSubCommandl_Click()

a=4

b=5

c=6

Printa=b+c

EndSub

程序运行后,单击命令按钮,其结果为o

A.a=llB.a=b+cC.FalseD.出错

【分析】本题主要是考核学习者掌握Print的功能及使用。

Print方法具有计算和输出2种功能。当Print的输出项是表达式时,将先计算

表达式,然后输出表达式的值。所计算和输出的表达式可以是算术表达式,也可

以是关系表达式或逻辑表达式。该例中的a=b+c是一个关系表达式,其中a的值

为4,b+c的值是11,Printa=b+c实际上执行的是:Print4=11,显然是一个

“假”值。

【解答】C

3.MsgBox函数的Buttons参数的表达为是错误的。

A.1个VisualBasic的内部常量

B.1个用加号连接着3个VisualBasic内部常量的表达式

C.1个整数值

D.1个用加号连接着3个标号值的表达式

【分析】本题主要考核学习者对Buttons参数的理解程度。在题目给出的选项中:

选项A正确。VisualBasic有许多内部常量,这些内部常量均以VisualBasic

开头,每一个内部常量有一个特定的含义。如VisualBasicOKOnly表示对话框

中仅有OK按钮,VisualBasicYesNoCancel表示对话框中包含有Yes、No和

Cancel按钮。Buttons参数可以用这种内部变量来表示。

选项B错误。Buttons参数只能用一个VisualBasic常量(即内部常量)表示。

选项C正确。Buttons参数可以表示成一个整数,但这个整数必须是允许使用的

Buttons参数值的和。如表示成275,275等于3+16+256,3、16、256是允许使

用的参数值。

选项D正确。Buttons参数可以如选项C的表示方法,也可以表示成1个用加号

连接着3个标号值的表达式,如表示成3+16+256。

【解答】B

4.MsgBox函数和MsgBox语句的本质区别是。

A.MsgBox函数和MsgBox语句的参数个数不同

B.MsgBox函数书写时有括号,MsgBox语句书写时没有括号

C.MsgBox函数与MsgBox语句执行时打开的对话框的类型不同

D.MsgBox函数返回函数值,MsgBox语句没有函数值返回

【分析】本题主要考核学习者对MsgBox函数和MsgBox语句的熟悉程度。

注意,题目要求指出MsgBox函数和MsgBox语句的本质区别,而不是形式上的区

别。

选项A不是本题答案。MsgBox函数比MsgBox语句多了一个参数项[,HelpFile,

Context],虽是一个区别点,但并不影响到对话框的功能。

选项B不是本题答案。该选项的叙述是正确的,也是二者的一个区别之处,但这

只是形式上的区别。

选项C不是本题答案,且该选项的叙述错误。MsgBox函数和MsgBox语句打开的

对话框是一样的,都是“模式”对话框。

选项D是本题答案。该选项的叙述道出了MsgBox函数和MsgBox语句的本质区别。

有无返回函数值才是MsgBox函数和MsgBox语句的根本区别。

【解答】D

5.下列函数调用语句错误的是0

A.x=MsgBox''关闭窗口前应先存盘!”

B.MsgBox”关闭窗口前应先存盘!“,6

C.MsgBox。关闭窗口前应先存盘!”)

D.*=1^813。*("是否继续?〃,“询问对话框〃)

【分析】本题考核MsgBox函数和MsgBox语句的调用方法及其参数的使用。

选项A和选项B是MsgBox语句,选项C和选项D是MsgBox函数调用。

选项A错误。MsgBox语句没有函数值的返回,不能将它赋给一个变量。

选项B错误。MsgBox语句的参数使用错误。第2个参数是Buttons,表示命令按

钮的类型和数量。参数有6个,参数值是0、1、2、3、4、5,没有6这个参数

值。

选项C正确。MsgBox函数有函数值返回,一般应写成这样。

选项D错误。MsgBox函数的第2个参数是Buttons,不能是一个字符串,该选项

的“询问对话框”参数是[,Title]参数,省略了第2个参数,此时,相应的分

隔符不能省略不写,正确的写法是:x=MsgBox(〃是否继续?",,”询问对话框")

【解答】C

6.MsgBox函数的Buttons参数值的含义有3种,错误的叙述是。

A.表示执行MsgBox函数弹出的对话框中命令按钮的类型和数量

B.指定执行MsgBox函数弹出的对话框中显示的图标

C.指定执行MsgBox函数弹出的对话框时的活动按钮

D.表示执行MsgBox函数弹出的对话框右上角是否有最大化按钮和最小化按钮

【分析】本题主要考核学习者对MsgBox函数打开的对话框的熟悉程度。

选项A正确。Buttons参数值包含有0〜5中之一时,用于确定对话框中命令按

钮的类型和数量。按钮有7种:确认、取消、终止、重试、忽略、是、否。

选项B正确。Buttons参数值包含有16、32、48、64时;用以确定对话框中显

示何种图标。16表示显示暂停图标;32表示显示疑问图标(?);48表示显示

警告图标(!);64表示显示忽略图标(i)。

选项C正确。Buttons参数值包含有0、256、512、768时,用以确定某一按钮

为打开对话框时的活动按钮。这4个数值分别表示第1、2、3、4按钮为活动按

钮。

选项D错误。VisualBasic的对话框右上角通常没有最大化按钮和最小化按钮,

MsgBox函数打开的对话框也是这样。

【解答】D

7.文本框Textl和Text2用于接收输入的两个数,求这两个数的乘积,错误的

是。

A.y=Textl.Text*Text2.Text

B.y=Val(Textl.Text)*Val(Text2.Text)

C.y=Str(Textl.Text)*Str(Text2.Text)

D.文本框的Text属性是字符型,所以以上语句都错误

【分析】通常有些学习者会认为选项A和C一定是错误的,因为两个字符串不能

进行乘法运算,本题要告诉学习者这样一种特殊情况:文本框控件也能接收数值

数据,且不必将Text属性转换为数值类型,就可以进行算术运算。

虽然文本框的Text属性是字符类型,但如果接收到的数据是数值,则系统会将

Text属性值当作数值类型数据处理。在VisualBasic6.0上验证了题中的3个

语句,结果这3种方法都得到输入的两个数值数据的乘积。

需要说明的是,本题中如果将表达式中的运算改为减法、除法运算,都能进行算

术运算。但是如果是将两个文本框中的内容(数)进行加法运算,则A和C的表

达式是进行字符串的连接,而不会进行算术运算。

【解答】D

8.文本框的MultiLine属性设置为True时,运行时接受或显示行文本,

按Enter键换行,此时如果没有水平滚动条和垂直滚动条,当文本超出

所能显示的长度时文本向显示;如果存在水平滚动条,文本超出长度后

向显示。文本框的MultiLine属性设置为False时按Enter键,文本—

换行,文本超出长度后向显示,但是此时不显示水平滚动条。以上2

种属性只能在阶段设置,在另一阶段它们是o

【分析】文本框在默认时只显示单行文本,且不显示滚动条,文本长度超出可用

空间,则只能显示部分文本,但可以通过设置MultiLine属性和ScrollBars属

性(只能在设计阶段设置),可以改变文本框的外观和行为。MultiLine属性为

True时,只要没有水平滚动条,多行文本就自动换行,将文本折回到下一行显

/J、O

【解答】多;自动;下一行;右;不;右;设计;只读

第5章常用标准控件

5.1典型考题分析与解答

1.要把一个命令按钮设置成无效,应设置其哪-个属性值______O

A.VisibleB.EnabledC.DefaultD.Cancel

【分析】Visible属性为控件的可见性设置;Enabled属性为控件的有效性设置;

Default属性为窗体默认命令按钮设置,即按Enter键时响应的命令按钮;Cancel

属性为指定命令按钮是否为窗体“取消”按钮。

【解答】B

2.执行x$=InputBox(“请输入x的值“)时,在弹出的对话框中输入123,在列

表框Listl选中第1个列表项(数据为456)o使y的值是123456的语句

是o

A.y=x$+Listl.List(1)B.y=Vai(x$)+Val(Listl.List(O))

C.y=Val(x$)+Val(Listl.List(l))D.y=Val(x$)&Val(Listl.List(O))

【分析】本题主要是考核学习者掌握列表框控件,Vai函数及运算符的功

能。

先要明确,*$表示变量x是字符类型变量。所以InputBox函数输入的数据123

被当作字符类型数据。

从ListBox控件输入的数据肯定是字符类型。选中Listl中的第1个列表项,该

列表项表达式为Listl.List(0)o

选项A不是本题答案。因为Listl.List(1)不是列表框控件的第1个列表项。

选项B不是本题答案。Vai函数是将字符串转换成数值,这是两个数值相加的表

达式,运算结果是579。

选项C不是本题答案。道理同上,且Listl.List(l)不是列表框控件的第1个列

表项。

选项D是本题答案。虽然Vai函数已经将字符串转换成数值,这是两个数值进行

“&”运算,但运算符忽略参与运算项的类型,而强行施加“连接”运算,

得到的结果是123456o

【解答】D

3.要设置计时器控件的定时时间,需设置的属性是。

A.IntervalB.EnabledC.ValueD.Text

【分析】本题主要是考核学习者掌握计时控件属性的设置。

计时器控件没有Value和Text属性。计时器控件的Enabled属性设置计时器控

件是否对事件产生响应。计时器控件通过Interval属性设置定时触发的周期(毫

秒数),即触发计时器两个事件之间的毫秒数,Interval属性值的范围为0〜

65535o

【解答】A

4.移动控件位置的组合按键是。

A.Shift键+“方向箭头”B.Alt键+“方向箭头”

C.Ctrl键+“方向箭头”D.Space键+“方向箭头”

【分析】本题主要是考核学习者掌握控件的基本操作。

由于平常程序设计者对控件移动缩放习惯于使用鼠标的拖动操作,这种方法也确

实很好用,而忽略如何用键盘操作来移动、缩放控件,而拿不准应该使用哪一种

组合键。这种容易忽略的地方,读者在考试前复习时,应该稍加注意。移动控件

位置的组合键是Ctrl键+“方向箭头”。

【解答】C

5.控制名称都是系统的默认控件名,下列语句错误的是o

A.Command1.Caption=Listl.Text

B.Label1.Caption=Listl.List(1)

C.Listl.List(2)=Listl.Text+Str(Listl.Listindex)

D.Textl.Text=Listl.Name+Textl.Caption

【分析】看到这个题目后,首先要读懂赋值语句中每一项的含义,其次要知道每

〜项的数据类型。

选项A正确。将列表框中选中的项目内容作为命令按钮的Caption属性值,这2

个属性的类型相同。

选项B正确。将列表框的第2个列表项的内容作为标签的Caption属性值,两者

的类型相同。

选项C正确。虽然Listl.Listindex是数值类型,但使用Str函数将其转换为字

符类型,再与列表框中被选中的项目连接,作为列表框第3项的内容。

选项D错误。因为文本框没有Caption属性。

【解答】D

6.窗体中含有一个滚动条Hscroll、一个标签Label1、一个形状控件Shapel。

滚动条的属性Max、Min>LargeChange>SmallChange值分别为1000、0、50、

10o形状为一个红圆。代码如下:

PrivateSubHscrol11_Changed0

Label1.Caption二〃Changed”

EndSub

PrivateSubHscrolll_Scroll()

Label1.Caption二〃Changing”

Shape1.Left=Hscrol1.Value

EndSub

运行时,用户单击滚动条右端箭头但是不释放左键时,标签显示,红

圆;用户拖动滑块时,标签显示,红圆。

则依次填入以上各空正确的一项是。

A.Changed>不移动、Changing、向右移动

B.Changing、不移动、Changed、向右移动

C.Changed、向右移动、Changing,不移动

D.Changing、向右移动、Changed>不移动

【分析】本题主要是考核学习者掌握水平滚动条的Change>Scroll事件的区别。

拖动滚动条时触发Scroll事件;单击滚动条右端箭头不触发此事件,仅触发

Change事件。Scroll事件用于跟踪滚动条中的动态变化,滚动条滚动时不断触

发该事件。Change事件用来得到滚动条的最后的值,仅在滚动条滚动结束时触

发一次。单击滚动条右端箭头触发Change事件,标签显示Changed,Shapel的

Left值不变;拖动滚动框时不停触发Scroll事件,标签显示Changing,Shapel

的Left值动态改变,向右移动。

【解答】A

7.窗体上有一个命令按钮Commandl、一个文本框Textl和一个列表框Listl。

文本框用来输入要添加到列表框中的项目内容。程序运行后,单击命令按钮,会

将文本框中的内容放入列表框中。程序如下:

PrivateSubCommandl_Click()

Textl.Text="”

Textl.SetFocus

EndSub

程序的空白行应填写语句o

A.Listl.Text=Textl.TextB.Listl.List=Textl.Text

C.Listl.AddItem=Textl.TextD.Listl.AddItem=Textl.Text

【分析】选项A不是本题的答案。列表框控件的Text属性既不能在属性窗口中

设置,也不能在程序中设置。Text属性是用来获取当前选定的项目内容,它只

能被访问,不能被赋值。

选项B不是本题的答案。List属性是一个数组,它保存了列表框中所有值。该

选项存在语法错误在于没有使用数组,语句改写如下便可:

Listl.List(i)=Textl.Text,其中i为一整数。这个语句的作用是将列表框第

i+1项的内容改为文本框中的内容,但语句不能为列表框添加内容。

选项C不是本题的答案。该语句用Additem方法为列表框添加内容是对的,但语

句的格式错误。使用Additem方法时,其后面不能用赋值号”=〃。

选项D是本题的答案。它符合Additem方法的格式和对参数的要求。

【解答】D

8.不能触发滚动条Change事件的操作是。

A.拖动滚动条中滑块B.单击滚动条中滑块

C.单击滚动条两端箭头D.单击箭头与滑块之间的滚动条

【分析】单击箭头与滑块之间的滚动条,滚动条的Value改变量是LargeChange。

单击滚动条两端箭头,滚动条的Value改变量是SmallChangeo拖动滚动条中滑

块,滚动条的Value改变量决定滑块的移动量。它们都使滚动条的Value改变,

都能触发滚动条Change事件。单击滚动条中滑块,不改变滚动条的Value属性,

也不能触发滚动条的Change事件。

【解答】B

9.单选按钮控件(OptionButton)和复选框(CheckBox)控件都有Value属性,

它们有什么区别o

【分析】单选按钮的Value属性用来表示按钮是否被选中,复选框的Value属性

用来表示复选框是否被选中。其区别是它们的类型不同;OptionButton控件的

Value属性值是逻辑类型,取值为True(选中)或False(不被选中);CheckBox

控件的Value属性值是数值类型,取值为0(不被选中)、1(被选中)或2(变

灰)。

【解答】OptionButton控件的属性值是逻辑类型,CheckBox控件的属性值是数

值类型。

10.向列表框控件添加项目和从列表框控件中删除项目所使用的方法的格式分别

和O

【分析】列表框控件用于向用户提供一个选项列表,用户可以从中选择一个或多

个项目。在设计阶段,向列表框中添加项目可以通过List属性项来实现。但在

运行阶段,向列表框中添加项目要用Additem方法,从列表框删除项目要用

RemoveItem方法。

在VisualBasic中,属性和方法的使用格式既有相同之处,也有不同之处。

相同之处是:使用属性或方法,都要先写控件名称,后写属性名称或方法名称,

中间用”连接,以指明“谁在使用什么”。

不同之处是:使用方法时,要用":”连接属性值,如Commandl.Caption="确

定“;而使用方法时,要用空格作分隔符,如Listl.Additem”计算机〃,或

Listl.RemoveltemListIndexo

向列表框添加项目使用Additem方法,格式为:ListBoxl.Addltem项目名称[顺

序号]

从列表框中删除项目使用RemoveItem方法,格式为:ListBoxl.Removeitem顺

序号

【解答】ListBoxl.Additem项目名称[顺序号];ListBoxl.Removeitem

11.在设计阶段看得见,在运行阶段看不见的控件是控件,使用该控件

时一定要用到的属性项是O

【分析】VisualBasic的常用控件中,在设计阶段看得见,在运行阶段看不见

的控件是计时器控件。计时器控件的用途是定时自动触发事件,该控件的

Interval属性的作用是用来设置定时器触发的周期(以毫秒计,取值范围为0〜

64767)o

【解答】计时器;Interval

第6章程序控制结构

6.1典型考题分析与解答

1.在窗体上有两个文本框和一个命令按钮(Name属性分别为Textl、Text2和

Commandl),其中任意一个文本框用来输入一个正实数,单击命令按钮后,在另

一个文本框输出该数的平方根。下面事件过程中的第一个If/EndIf结构的作用

是:判断如果没有在某一个文本框中输入实数就单击命令按钮,则给出错误信息,

然后结束程序的运行。第二个If/EndIf的作用是:判断在哪•个文本框中输入

实数,以便在另一个文本框中输出结果。

PrivateSubCommand1_CliCkO

If[1]Then

MsgBox("PleaseInputData")

ExitSub

EndIf

If[2]Then

Textl.Text=Str(Sqr(Vai(Text2.Text)))

Else

Text2.Text=Str(Sqr(Vai(Textl.Text)))

EndIf

EndSub

【分析】如果文本框的Text属性值为空,说明在文本框中没有输入数据,所以

第一个空应填写语句:Textl.Text=""AndText2.Text=,z

或:Textl=""AndText2="”

如果文本框的Text属性的长度为0,说明该文本框的Text为空串。从第二个

If_Else_EndIf结构看出,如果条件为真,要将Text2中的内容放入Textl中。

这个条件应是第一个文本框为空,所以第二个空应填写语句:

Len(Textl.Text)=0o

注意不能写成Len(Text2.Text)=0,这样写虽然没有语法错误,程序运行时也不

会出错,但不能实现题目所要求的功能。

【解答】Textl.Text=""AndText2.Text=""或:Textl-"AndText2="";

Len(Textl.Text)=0

2.下列语句中,语法正确的是。

A.R"2=9B.a<b=3C.a=b<3D.Leta=5,b=10

【分析】本题主要是考核学习者掌握赋值语句的书写格式。

赋值语句的命令动词是Let,Let可以省略,其格式为

[Let"变量名>=〈表达式》

赋值语句功能是:先计算表达式的值,然后把表达式的值赋给赋值号左边变量。

选项A错误。赋值号左边是一个算术表达式,不符合赋值语句的格式要求。

选项B错误。赋值号左边是一个关系表达式,不符合赋值语句的格式要求。

选项C正确。赋值号右边是一个关系表达式“b<3",将b<3的逻辑值赋给变量

a。

选项D错误。〜条Let语句只能给一个变量赋值,该语句试图用一个赋值语句给

两个变量赋值是错误的。若将该语句改为

Leta=5:b=10

就正确了,实际上是用冒号把它分开而成为两条赋值语句。

【解答】C

3.在窗体上画一个命令按钮,然后编写如下事件过程:

PrivateSubCommand1_C1ick()

Fori=lTo10

x=3

Forj=lTo3

x=x+3

Nextj

Nexti

Printx

EndSub

程序运行后,单击命令按钮,输出结果是。

A.9B.12C.90D.93

【分析】本题主要是考核学习者掌握“For语句”的编写。

题目中给出的是一个两层For循环的程序。语句“x=3”要执行10次。语句

“x=x+3”要执行30次。但不管外循环执行几次,每开始一个内循环时,x总是

被重新赋初值3。所以内循环最后一次执行时,x从初值3开始,执行3次加3

的操作,最后x的值是12。

【解答】B

4.下列程序的功能为输出如下的图形。程序不完整,请在[1]、[2]处

填入所需内容。

PrivateSubCommand1_C1ick()

Fori=lTo4

PrintTab(10+i);

Forj=[1]

Print〃*〃;

[2]

Print

Nexti

EndSub

【分析】本题主要是考核学习者掌握“双重循环结构”语句的编写。

题目中给出这类测试的程序通常有…个双重循环结构,外循环决定打印输出行的

数量,内循环决定每行输出的字符和字符个数,通常在Print语句中用一个Tab

函数确定每行第一个字符的打印位置。程序的外循环变量i从1增加到4,步长

为1,循环4次,因此打印输出4行。内循环的循环变量j,其初值和终值均不

知道。我们从各行打印输出的字符均为8个“*”号,而内循环的Print语句每

次打印输出1个“*”号,因此可以肯定,内循环的循环次数为8次。如果我们

将循环变量j的初值定为1,终值定为8,即可满足本题的要求。我们给出的

【解答】为1T。8。在进入内循环以前的Print语句的Tab函数是用来确定每

行的打印的起始位置的,Print语句的Tab函数的实际变量为10+i,每次内循环,

每行的打印随外循环变量i的增大而从第10列逐行右移一列。

【解答】[1]1To8;[2]Nextj

5.下面程序执行后,x的值为。

a=10:b=0

DoWhilea-b

a=a-l

b=b+l

x=x+a+b

loop

A.30B.40C.50D.60

【分析】本题主要是考核学习者掌握“DoWhile-loop控件结构”编程。

题目中给出的程序用DoWhile-loop控件结构编程。DoWhile语句的条件表达

式是数字表达式a-b,当a-b为0时,结束循环。

程序中的While循环执行5次,注意不是执行6次。每执行一次循环体,将a+b

的值累加到x中,a+b的值总是10,所以最后x的值为50。

【解答】C

6.假定有下面的程序段:

Fori=lTo3

Forj=lToi

Fork=jTo3

Print1=;i,j=;,j,k=;k

Nextk

Nextj

Nexti

这是一个三重循环程序,在这个程序中,外层、中层和内层循环的循环次数

是。

A.3、6和14B.3、8和16

C.3、4和12D.3、9和18

【分析】本题主要是考核学习者掌握“多重特环结构语句”的使用。

在多重循环中,外层循环

温馨提示

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

评论

0/150

提交评论