《计算机等级考试二级vb考试重点难点分析.pdf》由会员分享,可在线阅读,更多相关《计算机等级考试二级vb考试重点难点分析.pdf(31页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、计算机等级考试二级VB考试重点难点分析第1章 应 试 指 南(略)数据结构与算法(公共基础部分)程序设计基础(公共基础部分)第4章 软件工程基础(公共基础部分)第5 数据库设计基础(公共基础部分)VB程序设计的初步知识第7章 数据输入输出7.12“Print方法彳/关的函数7.1.4 Cis方法与Move方法 7.1.5 MsqBox函数,迷 Visual Basic控制结构 8.1.1 Hf函数第9章 数组与过程9.1.2默认数组第1。章 键盘与鼠标 事 件10.L1 KeyDown和KeyUp事件第11章 可视化程序设计1L L 2弹出式菜单 数据文件第13章笔试模拟试卷及解析(略)第14
2、章 机试指导、分类解析及模拟(略)第2章 数据结构与算法本章节主要考查算法的基本概念、基本的数据结构及其基本操作、查找和排序算法。本章的内容在历次试题中所占的比例约为1 1.2%,都是以选择题和填空题的形式出现的。2.1.1 考点1:算法的定义算法是对一个问题求解步骤的一种描述,是求解问题的方法,它是指令的有限序列,其中每条指令表示一个或者多个操作。一般来说,一个算法具有以下5 个主要的特征。(1)有穷性:一个算法(对任何合法的输入)在执行有穷步后能够结束,并且在有限的时间内完成。(2)确定性:算法中的每一步都有确切的含义。(3)可行性:算法中的操作能够用已经实现的基本运算执行有限次来实现。(
3、4)输入:一个算法有零个或者多个输入,零个输入就是算法本身缺定了初始条件。(5)输出:一个算法有一个或者多个输出,以反映出数据加工的结果。例2.1.1 问 题 处 理 方 案 的 正 确 而 完 整 的 描 述 称 为。20 0 5 年4 月填空第5 题答案:算法例2.L 2 一个算法应该具有“确定性”等5 个特性,下面对另外4 个特性的描述中错误的是()。A.有零个或多个输入 B.有零个或多个输出C.有穷性 D.可行性答案:B例2.L 3 算法具有5 个特性,以 卜 选项中不属于算法特性的是()。A.有 穷 性 B.简 洁 性 C.可 行 性 D.确定性答案:B第3章程序设计基础本章主要考查
4、程序设计的一些基本知识,比如程序设计的方法与风格、结构化程序设计与面向对象程序设计的基本思想。从历次的试题来看,本章试题分值约占2.4%,属于非重点考查对象。尽管分值所占的比例较少,但基本上每次至少有道试题。试题以选择和填空的形式出现。3.1 程序设计该节知识点所占试题比重为1 7%,属于非重点考查对象。到目前为止,该知识点只出过一道选择题。从考试大纲来看,主要考查程序设计的方法、程序设计风格。3.1.1 考点1:程序设计的方法程序是指令的有序集合,它是为了解决某一问题而设计的一系列指令。程序设计是使用计算机系统的指令或语句,组成求解不同问题,实现不同算法所需的完整序列的一个工作过程。随着计算
5、机硬件技术的发展以及计算机技术的广泛应用,根据需求程序设计的方法也经过了儿个发展的过程。在程序设计早期,山于受到计算机硬件的限制,运行速度慢,存储空间少,使得程序员不得不提高程序的效率,在这种情况下,编程成了一种技巧和艺术,程序的可理解性和可扩充性没有得到重视。在这个时期出现的高级语言有F o r t r a n、C O B O L.A L G O L、B a s i c 等语言,在这个时期不注重程序的结构,可以说这是没有固定程序设计方法的时期。计算机硬件得到了很大的发展,在编程的时候,运行速度和存储空间不再困扰程序员,计算机技术应用范围的扩大使得程序必须要有良好的结构,在这种需求下,提出了结
6、构化程序设计方法。这时出现的高级语言有P A S C A L、C 等。2 0 世纪6 0 年代后期,提出了类和时象的概念,程序设计已经不是问题的中心,如何更好地描述问题已经成为了主题,因此在这种情况下,面向对象的程序设计方法发展起来了,并得到广泛地应用。进入2 0 世纪8 0 年代后,出现了 一系列的面向对象程序设计语言,如C+等。下面我们会详细讨论结构化程序设计和面向对象程序设计。3.1.2 考点2:程序设计的风格我们在编写程序时要养成良好的程序设计习惯,对程序的要求不仅能够在计算机上正确运行,而且要便于阅读和被别人理解,便于程序的调试和维护。好的程序设计风格有助于提高程序的正确性、可读性、
7、可维护性和可用性。要使程序具有良好的风格,概括起来可以分成4部分:源程序文档化、数据说明、语句结构、输入/输出方法。1.源程序文档化源程序文档化主要包括:标识符的命名、程序中添加注释以及程序的编辑风格。(1)标识符的命名标识符即符号名,包括变量名、模块名、常量名、标号名、函数名、数据区名和缓冲区名等。一个程序中必然有很多的标识符,特别是在一个复杂大型的程序中,标识符可能成千上万,对标识符作用的正确理解是读懂程序的前提,如果程序员随意命名标识符,程序的可读性会很差。因此,标识符的命名应该要规范化,具体要根据下面几个原则来命名。选取有实际意义的标识符名称。为了方便理解标识符的作用,标识符的名字要能
8、够反映其作用,如用于存储数量的变量的名称可以是count等。为了便于程序的输入,标识符的名字不宜太长。必要时可以用些缩写,但是要注意缩写规则要致,并且要给每一个变量加因主释。为了便于区分,不同的标识符不要取过于相似的名字。由于程序中通常需要大量不同类型的标识符,为了使说明部分阅读起来更加清晰,在对其进行类型说明时应注意以下几点:按照某种顺序对各种类型的变量进行集中说明,如先说简单类型,再说明记录类型;在使用一个说明语句对同一类型的多个变量进行说明时,按照变量名中的字母顺序进行排列。(2)程序中加注释注释是程序员与日后的程序读者之间通信的重要工具,用自然语言或伪码描述。它说明了程序的功能,特别在
9、维护阶段,对理解程序提供了明确指导。一些正规的程序文本中,注释行的数量占到整个源程序的1/31/2,甚至更多。注释分序言性注释和功能性注释。序言性注释:一般置于每个程序模块的开头部分,它应当给出程序的整体说明,用来引导读者理解程序。主要描述内容可以包括:程序标题、程序功能说明、主要算法、接口说明、有关数据描述、程序位置、开发简历、程序设计者、复审者、复审日期和修改日期等。功能性注释:一般置于程序体中,用来描述其后的语句或程序段是用来做什么的,或者是执行了其下面的语句或程序段会产生什么样的效果,而不要解释下面该怎么做。(3)程序的编辑风格为了使程序的结构一目了然,可以在程序中利用空格、空行、缩进
10、等技巧使程序层次清晰,便于程序的理解。可以按照以下几个原则来编辑程序。恰当地利用括号,可以突出运算的优先性,避免发生运算错误。程序段之间可用空行隔开。对于选择语句和循环语句,应该做适当的缩进,使得程序的逻辑结构更加清晰。2.数据说明在程序设计时,应该注意数据说明的风格。为了使数据定义更易于理解和维护,有以下指导原则。(1)数据说明顺序应规范化,使数据的属性更易于查找,从而有利于测试、纠错与维护。原则上,数据说明的次序与语法无关,其次序是任意的,但是便于阅读和理解,最好使其规范化,使说明次序按照某种规则固定。例如,按以下顺序:常量说明、类型说明、全程量说明及局部量说明。(2)语句中变量的说明应有
11、序化,多个变量在同一个说明语句中说明时,各变量名按字典序排列。(3)使用注释来说明复杂的缎据结构时,要说明在程序实现这个数据结构时的特点。3.语句结构单个语句结构是编码阶段的任务,语句结构追求简单直接,不能为了追求效率而使代码复杂化。我们可以根据下面的原则来构造语句。为了便于阅读和理解,不要一行多个语句。不同层次的语句采用缩进形式,使程序的逻辑结构和功能特征更加清晰。要避免复杂的判定条件,避免多重的循环嵌套。表达式中使用括号以提高运算次序的清晰度。程序编写首先应当考虑程序结构的清晰性,不要刻意追求技巧性,使得程序复杂。除非对效率有特殊要求,否则先要考虑程序的清晰性,不要追求高效率而丧失程序的清
12、晰度。程序编写要简单,要直截了当地发达蛆程序员的用意。首先要保证程序正确,然后才要求提高速度。避免使用临时变量而使程序可读性下降。尽可能使用库函数。4.输入和输出输入和输出是程序的一个重要的组成部分,是用户和计算机交互直接相关的。输入和输出的方式应当尽量方便用户的使用。一定要避免输入输出的不当而导致用户使用软件麻烦。因此,在软件需求分析阶段和设计阶段,就应基本确定输入和输出的风格。软件能否被用户接受,有时就取决于输入和输出的风格。一个良好的输入输出风格能够使用户很方便地使用系统,我们在编码阶段可以根据下面的原则来设计一个好的输入输出。对所有输入的数据都要进行有效性检查,要能够识别出错误的输入,
13、对错误的输入做出异常处理,使得每个输入数据都具有有效性。检查输入数据项的各种重要组合的合理性,必要时报告输入状态信息。在输入时,输入的步骤和方式应该尽量简单。输入数据时,应允许使用自由格式输入。允许默认值 输 入 批 数 据 时,最好使用输入结束标志,而不要用户指定输入数据数目。在交互输入时,要给用户提示信息,如可使用选择项的种类和取值范围,在输入结束时,给出状态信息。当程序设计语言对输入/输出格式有严格要求时,应保持输入格式与输入语句的要求的一致性。给所有的输出加注解,并设计输出报表格式。例3.1.1 以下叙述中错误的是()。2 0 0 5 年9 月选择第1 1 题A.用户所定义的标识符允许
14、使用关键字B.用户所定义的标识符应尽量做到“见名知意”C.用户所定义的标识符必须以字母或下划线开头D.用户定义的标识符中,大、小写字母代表不同标识答案:A第4章 软件工程基础本章主要掌握以下几个方面内容。(1)软件工程的基本概念、软件生命周期概念、软件工具和软件开发环境;(2)结构化分析方法、数据流图、数据字典和软件需求规格说明书;(3)结构化设计方法、总体设计和详细设计(4)软件测试的方法、臼盒测试与黑盒测试、测试用例设计、软件测试的实施、单元测试、集成测试和系统测试;(5)程序调试、静态调试与动态调试;(6)软件维护。通过对历次试卷内容的分析,软件工程考核内容占卷面分数6.8%。4.1 软
15、件工程的基本概念软件工程的基本概念所涉及的试题分值在本章中所占比重为1 6%4.1.1 考点1:软件与软件工程概述1.软件的定义软件是程序、数据与相关文档的集合,相对于计算机硬件而言,软件是逻辑产品而不是物理产品,是计算机的无形部分。软件包括系统软件和应用软件。系统软件是计算机管理自身资邈,提高计算机使用效率而编写的软件。系统软件依赖于机器的指令系统、中断系统,以及运算、控制、存储部件和外部设备。系统软件包括操作 系 统(如W i n d ows、U N I X、L i n ux、M a c i n tosh 等)、各种语言编译的编译程序、数据库管理系统、文件编辑系统、系统检查与诊断软件等。应
16、用软件是专门为了某种使用目的而编写的程序系统,常用的有文字处理软件(如W P S 和W ord)、专用的财务软件、人事管理软件、计算机辅助软件(如A utoC A D)和绘图软件(如3 D S)等。与硬件相比,软件的特点包括:(1)软件是一种逻辑实体;(2)软件的生产与硬件不同,它没有明显的制作过程;(3)软件在运行、使用期间不存在磨扳、老化问题;(4)软件的开发、运行对计算机系统具有依赖性,受计算机系统的限制,这导致了软件存在移植的问题;(5)软件复杂性高,成本昂贵;(6)软件开发涉及诸多的社会因素。2 .软件工程的定义随着计算机的应用范围日益广泛,传统的软件开发成本难以控制,进度不可预计;
17、软件系统的质量和可靠性很差;软件文档相当缺乏,软件系统不可维护;软件开发生产率很低,软件产品供不应求;软件产品成本十分昂贵等特点日益显现,成为计算机应用的一个“瓶颈”,出现了所谓的“软件危机”。1 9 6 8 年,北大西洋公约组织(N A T O)召开计算机科学会 议,首次提出了软件工程的概念,试图用工程化的方法开发软件,从而解决或缓解软件危机。软件工程是采用工程化的方法开发和维护软件的工程学科。把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术和方法结合起来,以便经济地开发出高质量的软件并有效地维护它。软件工程包括3 个要素,分别是方法、工具和过程。软件工程的基本思想是在软件开发过
18、程中需要应用工程化原则进行软件开发,并将这个思想贯穿到软件开发的整个过程中。软件工程的目标是在给定成本、进度的前提下,利用工程化原则,开发出具有可修改性、有效性、可靠性、可理解性、可维护性、可重用性、可适用性、可移植性、可追踪性和可互操作性并满足用户需求的软件产品。3 .例题例4.1.1 下列描述中正确的是()。2 0 0 5 年4 月选择第8 题A.程序就是软件 B.软件开发不受计算机系统的限制C.软件既是逻辑实体,又是物理实体D,是程序、数据与相关文档的集合答案:D例4.1.2 下列描述中正确的是()。2 0 0 5 年9 月选择第5 题A.软件工程只是解决软件项目的管理问题B.软件工程主
19、要解决软件产品的生产率问题C.软件工程的主要思想是强调在软件开发过程中需要应用工程化原则D.软件工程只是解决软件开发中的技术问题答案:C第5章数据库设计基础本章主要掌握以下几个方面内容。(1)数据库的基本概念、数据库、数据库管理系统和数据库系统;(2)数据模型、实体联系模型、E-R 图和从E-R 图导出关系数据模型;(3)关系代数运算(包括集合运算及选择、投影、连接运算)和数据库规范化理论;(4)数据库设计方法和步骤、需求分析、概念设计、逻辑设计和物理设计的相关策略。通过对历次试卷内容的分析,本章考核内容占卷面分数8.8%。5.1 数据库基础知识信息在现代社会中起着越来越重要的作用,信息资遮的
20、开发和利用水平已成为衡量一个国家综合国力的重要标志。在计算机应用领域中,数据处理是其主要方面。数据库技术就是作为数据处理中的门技术而发展起来的。本节介绍数据库系统的基本概念和发展历史,初步了解数据库系统的概貌。数据库基础知识所涉及的试题分值在本章中所占比重为4 1%,5.1.1 考点1:数据库数 据 库(D a t a b a s e,DB)可以看成是长期存储在计算机内的、大量的、有结构的和可共享的数据集合。数据是描述现实世界中各种具体事物和抽象概念的可存储并有明确意义的信息。数据库可以被直观地理解为存放数据的仓库,只不过这个仓库是在计算机的大容量存储器上,例如,硬盘就是一种最常见的计算机大容
21、量存储设备。数据必须按一定的格式存放,因为它不仅需要存放,而且还要便于查找。数据库的特点如下(1)数据按一定的数据模型组织、描述和储存。(2)冗余度较小。数据共享大大减少了数据冗余。(3)数据独立性较高。数据独立性是数据库领域中一个常用的术语,也是数据库技术的重要特点之一。数据独立性是指数据的组织结构和存储方法与应用程序互不依赖、彼此独立。它包括数据的物理独立性和数据的逻辑独立性。物理独立性是指用户的应用程序与存储在磁盘上的数据库中的数据是相互独立的,也就是当数据的物理存储改变了,用户程序也可以不变。逻辑独立性是指用户的应用程序与数据库的逻辑结构是相互独立的,也就是说,数据的逻辑结构改变了,用
22、户程序也可以不变。(4)易扩展。(5)可为各种用户共享。不同的用户可以使用同个数据库,可以取出他们所需要的子集,而且容许子集任意重叠。例5.1.1数据独立性是数据库技术的重要特点之-o所谓数据独立性,是 指()。2 0 0 5年4月选择第9题A.数据与程序独立存放B.不同的数据被存放在不同的文件中C.不同的数据只能被对应的应用程序所使用D.以上三种说法都不对答案:D例5.1.2数据库设计的根本目标是要解决()。2 0 0 5年9月选择第8题A.数据共享问题 B.数据安全问题C.大量数据存储问题 D.简化数据维护答案:A例5.1.3下列叙述中正确的是()。2 0 0 4年9月选择第9题A.数据库
23、系统是一个独立的系统,不需要操作系统的支持B.数据库设计是指设计数据库管理系统C.数据库技术的根本目标是要解决数据共享的问题D.数据库系统中,数据的物理结构必须与逻辑结构一致答案:C第6章Visual Basic程序设计的初步知识本章主要考查关于V is u a l B a s ic概述、V is u a l B a s ic程序开发环境、V is u a l B a s ic常用对象及其操作、V is u a l B a s ic应用程序基本操作、V is u a l B a s ic常用数据类型、V is u a l B a s ic中的常量和变量、V is u a l B a s ic常
24、用内部函数、V is u a l B a s ic字符串处理、V is u a l B a s ic运算符与表达式和V is u a l B a s ic常用检1控件等内容。通过对历年试卷内容的分析,本章考核内容约占卷面分数30%,属于重点考查对象。由命题走势图可知,本章内容所涉及考题分值有下降趋势,但是考生绝不能掉以轻心,因为本章内容是整个V is u a l B a s ic语言的基础,并且在试题中本章所占比例较大,近年来考题分值一直保持在25分左右,因此考生应重点复习。6.1 Visual Basic概述考点1:Visual Basic的特点和版本1.Visual Basic的特点Vis
25、ual Basic是在Basic语言基础上研制而成的,它具有Basic语言简单而不贫乏的优点,同时增加了结构化和可视化程序设计语言的功能。Visual Basic是一种可视化的、面向对象和采用事件驱动方式的结构化高级程序设计语言,可用于开发Windows环境下的各类应用程序。总起来说,Visual Basic有以下主要特点:(1)可视化编程;(2)面向对象的程序设计;(3)结构化的程序设计语言;(4)事件驱动编程机制;(5)访问数据库。与传统的编程语言相比,Visual Basic最突出的特点是可视化编程。2.Visual Basic的版本Visual Basic 6.0包括3种版本,分别为学
26、习版、专业版和企业版。(1)学习版Visual Basic的基础版本,可用来开发Windows应用程序。该版本包括所有的内部控件(标准控件)、网 格(Grid)控件、Tab对象以及数据绑定控件。(2)专业版该版本为专业编程人员提供了 整套用于软件开发、功能完备的工具。它包括学习版的全部功能,同时包括ActiveX控件、Internet控件、Crystal Report Writer和报表控件。(3)企业版可供专业编程人员开发功能强大的组内分布式应用程序。该版本包括专业版的全部功能,同时具有自动化管理器、部件管理器、数据库管理工具、Microsoft Visual SourceSafe面向工程版
27、的控制系统等。在这3种版本中,企业版最全;而专业版包括了学习版的功能,用户可根据自己的需要选择不同的版本。例6.1.1 以 F 关于Visual Basic特点的叙述中,错误的是()。2006年4月选择第11题A.Visual Basic是采用事件驱动编程机制的语言B.Visual Basic程序既可以编译运行,也可以解释运行C.构成Visual Basic程序的多个过程没有固定的执行顺序D.Visual Basic程序不是结构化程序,不具备结构化程序的三种基本结构答案:D第7章数据输入输出本章主要考查数据输入输出方法,包括数据输出方法、数据输入方法、字形设置与打印输出等内容,本章内容通常与其
28、他章节知识点结合起来考、通过对历年试卷内容的分析,本章考核内容约占4%,属于非重点考查对象7.1 数据输出方法7.1.1 考点1:print方法Print方法可以在窗体上显示文本字符串和表达式的值,并可在其他图形对象或打印机上输出信息。Print方法的一般格式如下:对象名称.Print 表达式 ,1;说明:“表达式 是一个或多个表达式,可以是数值表达式或字符串。当输出多个表达式或字符串时,各表达式用分隔符(逗号、分号或空格)隔开。如果输出的各表达式之间用逗号分隔,则按园隹输出格式(分区输出格式)显示数据项。在这种情况下,以14个字符位置为单位把一个输出行分为若干个区段,逗号后面的表达式在下一个
29、区段输出。如果各输出项之间用分号或空格作为分隔符,则按紧凑输出格式输出数据。Print方法具有计算和输出双重功能.对于表达式,它先计算后输出。在一般情况下,每执行一次Print方法后会自动换行。为了仍在同一行上显示,可以在末尾加上一个分号或逗号。例7.1 以下语句的输出结果是 2005年4月填空第6题Print Ini(12345.6789*100+0.5)/100解析:12345.6789*100+0.5=1234568.39,Int(12345.6789*100+0.5)=1234568,最后结果为 12345.68。答案:12345.687.1.2 考点2:与Print方法有关的函数在P
30、rint方法中经常使用Tab函数、Spc函数和Space函数,使信息按指定的格式输出。1.Tab(n)函数Tab(n):用于把光标往后移动n个字符的位置,从这个位置开始输出信息。要输出的内容放在Tab函数的后面,并用分号隔开。例如:Print Tab(25);8OO说明:参数n为数值表达式,其值为一个整数,它是下一个输出位置的列号,表示在输出前把光标移到该列。最左边的列号为1,如果当前的显示位置已经超过n,则自动下移一行。在Visual Basic中,对参数n的取值范围没有具体限制。当n比行宽大时,显示位置为n Mod行宽;如果n title,helpfile,context)功能:MsgBo
31、x函数用于在用户操作时,显示一个提示性的对话框,以提示用户进行后面操作的选择。MsgBox函数的参数及其作用见下表。MsgBox函数的参数及其作用参数含义prompt显示提示用户的字符串,在对话框内显示,不超过1024个字符type整数或符号常量,控制按钮和图标的种类和数量表tide显示对话框的标题hepfle字符聿表达方式,用于指明帮助文件的名字context数值表达方式,表示相关的帮助主JK或目录号MsgBox函数的返回值见下表。MsgBox函数的返园值操作返国值符号常量选“确定”按钮1vbOk选“取消”按钮2vbCancel选“终止”按钮3vbAbort选“重就”按钮4vbRetry选“
32、忽略”按钮5vblgnore选“是 按 钮6vbYes选“否”按钮7vWJo例如:编写程序,用MsgBox函数判断是否继续执行。Private Sub Form_Click()msg$=”请确认数据是否正确”Title$=数据检查”x=MsgBox(msg$,19,Title$)If x=6 ThenPrint x*xElself x=7 ThenPrint”请重新输入”End IfEnd Sub程序运行后,单击窗体,弹出如图7-6所示的对话框。如果选择“是 按钮,则返回值为6,在窗体上打印出36;如果选择“否”按钮,则返回值为7,在窗体上打印出“请重新输入”。rrr*图7-6 MsgBox函
33、数对话框例7.1.5 假定有如下的命令按钮(名称为Commandl)事件过程:Private Sub Command 1 _Click()x=InputBox(“输入:”,,“输入整数”)MsgBox”输入的数据是:“,”输入数据:”+xEnd Sub程序运行后,单击命令按钮,如果从键盘上输入数1 0,则以下叙述中错误的是()。2006年4月 选择第19题A.x的值是数值10B.输入对话框的标题是“输入整数”C.信息框的标题是“输入数据:10”D.信息框中显示的是“输入的数据是:”答案:A7.1.6 考点6:MsgBox语句MsgBox函数也可以写成语句形式,即:MsgBox Msg$,typ
34、e%,title$,helpfile,context各参数的含义及作用与MsgBox函数相同,由于MsgBox语句没有返回值,因而常用于较简单的信息显示。例7.1.6 MsgBox函数的返回类型是()。A.字 符 型 B.数 值 型 C.日 期 型 D.没有返回值答案:B重点提示:考生在考试中应当注意MsgBox函数返回值与MsgBox语句的返回值不同,MsgBox函数返回值为数值,而MsgBox语句则没有返回值。第8章Visual Basic控制结构本章主要考查Visual Basic程序设计常用的控制结构,包括分支控制结构、循环控制结构和GoTo型控制结构。通过对历年试卷内容的分析,本章考
35、核内容约占10%,属于一般考查对象。本章内容下次考试将有上升趋势。8.1 分支控制结构8.1.1 考点1:单行结构条件语句单行条件语句的格式如下:If 条件 Then then 部 分 Else else 部分其功能为:如果“条件”为T rue,则执行“then部分”,否则执行“else部分”。其中的“else部分”是可选的,当其省略时,If语句简化为:I f 条 件 Then then部分其功能为:如果“条件”为T ru e,则执行“then部分”,否则执行下一行程序。条件语句中的“then部分”和“else部分”都可以嵌套,其深度(嵌套层数)没有具体规定,但受到每行字符数(1024)的限制
36、。当嵌套层数较多时,应注意嵌套的正确性,一般原则是:每一个“Else”部分都与它前面未曾被配对的“If-Then”配对。例8.1.1 当x=-5时,执行下述代码后,x的 值 为()。If x=0 Then If x 0 Then y=1 Else y=0 Else y=-1A.1 B.0 C.-1 D.以上都不正确答案:C8.1.2 考点2:块结构条件语句块结构条件语句与C、Ada等语言中的条件语句类似,一般格式如下:If 条件 1 Then语句块1lElself 条件2 Then语句块2lElself 条件3 Then语句块引Else语句块nJEnd If其功能为:如果“条件1”为T ru
37、e,则执行“语句块1”;如果“条件2”为T ru e,则执行“语句块2”.则执行“语句块n”。该语句中的“语句块”可以是一个语句,也可以是多个语句。当是多个语句时,可以分别写在多行里;如果写在一行中,则各语句之间用冒号隔开。说明:该语句中的“条件1”、“条件2”等都是逻辑表达式,通常数值表达式和关系表达式都是逻辑表达式的特例。“语句块”中的语句不能与前面的Then在同一行,否则Visual Basic认为是一个单行结构的条件语句。在块结构的条件语句中,Elself子句的数量没有限制,可以根据需要加入任意多个Elself子句。块结构条件语句中的Elself子句和Else子句都是可选的。当If结构
38、体内有多个条件为True时,Visual Basic执行第一个为True的条件后面的语句块。块形式的条件语句可以嵌套,嵌套时必须完全“包住”,不能互相“骑跨”。例&1.2 函数A()、B()、C()分别实现三种不同的功能,令X=l、Y=-4、Z=0,那么下述代码的功能是()。If(X0)ThenA()Elself(Y10)ThenB()Elself(Z3)ThenC()End IfA.执行函数A()B.执行函数B()C.执行函数C()D.以上都不正确答案:A8.1.3 考点3:n f函数Hf函数可以用来执行简单的条件判断操作,它是“IfThenElse”结构的简写版本,是“Immediate
39、If的缩略。其格式如下:result=IIf(条件,True 部分,False 部分)其中,“result”是函数的返回值,“条件”是一个逻辑表达式。当“条件”为真时,Hf函数返回“True部分”,否则返回“False部分”。“True部分”或,False部分”可以是表达式、变量或其他函数。该函数与C语言中?:”运算符的功能相似,可以使程序大为简化。例8.1.3 设2=或 ,b=b,c=c”,d=“d”,执行语句x=Uf(ad),A,“B”)后,x的 值 为()。2005年4月选择第15题A.a B.b C.B D.A”答案:D重要提醒:使用Ilf函数时,其中的三个参数都不可以省略,而且要求“
40、T rue部分”、“False部分”及结果变量的类型一致。此外,由于Ilf要计算“True部分”和“False部分”,因此有可能会产生副作用。8.1.4 考点4:多分支控制结构多分支控制结构由情况语句(Select语句或Case语句)构成,它可以根据一个表达式的值,在一组相互独立的可选语句序列中挑选要执行的语句序列。情况语句是块形式条件语句的一种变形,其格式如下:Select C ase测试表达式C ase表达式表列1 语句块2Case表达式表列2 语句块2Case Else 语句块nEnd Select其功能是,根据“测试表达式”的值,从多个语句块中选择符合条件的一个语句块执行。其中,“测试
41、表达式”可以是数值表达式或字符串表达式,通常称为变量或常量;“语句块1、语句块2语句块n”由一行或多行合法的Visual Basic语句组成。“表达式表列1、表达式表列2表达式表列n”称为域值,可以采用下述三种形式:表达式,表达式、表达式To表达式、Is关系运算表达式。对于这种控制结构,需要掌握以下几点:Select Case语句与IfThenElse语句块的功能类似,二者可以互换使用。和C语言不同,如果同一个域值的范围在多个Case子句中出现,则只执行符合要求的第一个Case子句的语句块。Case Else子句必须放在所有的Case子句之后,如果Select Case结构中任何-个Case子
42、句都没有与测试表达式相匹配的值,而且也没有Case Else子句,则不执行任何操作。在不同的Case子句中指定的条件和相应的操作不能相互矛盾。例8.1.4 在窗体上画1个命令按钮(名称为Commandl)和1个文本框(名称为Textl),然后编写如下事件过程:Private Sub Commandl_Click()x=Val(Textl.Text)Select Case xCase 1,3y=x*xCase Is=10,Is=-10y=xCase-10 To 10y=-xEnd SelectEnd Sub程序运行后,在文本框中输入3,然后单击命令按钮,则以下叙述中正确的是()。2006年4月选
43、择第20题A.执行y=x*x B.执行y=-x C.先执行y=x*x,再执行y=-x D.程序出错答案:A重要提示:“表达式表列”中的三种形式,在使用时需要注意以下几点:关键字To用来指定一个范围,此时,必须把较小的值写在前面,较大的值写在后面,字符串常量的范围必须按字母的顺序写出。如果使用关键字I s,则只能用关系运算符,并且条件只能是简单条件,不能用逻辑运算符将两个或多个简单条件组合在一起。在一个Select Case语句中,三种形式可以混用。第9章数组与过程本章主要考查Visual Basic中的数组与过程,主要包括:数组基本概念、数组基本操作、控件数组、Sub过程、Function过程
44、、过程中的参数、局部内存分配和Shell函数。通过对历年试卷内容的解析,本章考核内容约占18%,属于重点考查对象,但将保持下降趋势。9.1 数组基本概念9.1.1 考点1:数组的定义数组是有序的数据的集合。在Visual Basic中,一个数组中的元素可以是相同类型的数据,也可以是不同类型的数据。在Visual Basic中,可以有两种格式定义数组:1.第一种格式(1)一维数组一维数组的定义一般格式如下:D im 数组名(下标上界)A s 类型名称例如:Dim score(10)As Integer该语句定义了一个一维数组,名字为score,类型为Integer,共6个元素。(2)二维数组二维
45、数组的定义一般格式如下:D im 数组名(第一维下标上界,第二维下标上界)A s 类型名称例如:Dim stuScore(10,2)As Integer该语句定义了一个二维数组,名字为stuScore,类型为Integer,共11X3=33个元素。2.第二种格式(1)定义数组在定义数组时,指定数组下标的上界和下界。语句一般格式如下:D im 数组名(下 界 To上界,下 界 To上界)A s 类型名称例 如:Dim score(1 To 5)该语句定义了一个一维数组,下界为1,上界为5,共5个元素。第二种格式实际上包含了第一种格式,只要省略“下界To,即变为第一种格式。(2)语句说明“数组名”
46、与简单变量相同,可以是任何合法的Visual Basic变量名,在同一过程中,数组名不能与变量名同名;数组必须先定义后使用,并且每一维的元素个数必须是常数,不能是变量或表达式;使用Dim语句定义数组时,数值数组中的全部元素初始化为0,字符串数组中的全部元素初始化为空字符串;一般情况下,下标的下界默认为0,可以使用Option Base n(n只能为或1)改变下标的默认为1;使用L B o und和U B o u n d函数可以获得数组的上、下界值;如果下标值从0开始,则数组元素的个数为最大下标值加1,如果下标值从1开始,则数组元素的个数与最大下标值相等。3.定义数组的保留字在Vi s ua l
47、 B a s i c中,定义数组时可使用4个保留字,以定义不同范围内的数组:D i m:定义窗体模式或标准模块数组,也可用在过程中;R e D i m:用在过程中;Sta ti c:用在过程中;P ub li c:用在标准模块中,定义全局数组。例9.1.1在窗体上画1个命令按钮,其名称为C o m m a n d l,然后编写如下事件过程:2 0 0 6年4月填空第7-8题P r i va te Sub C o m m a n d 1 _ C li c k()D i m a r r (1 To 1 0 0)A s I nteg erFo r I =1 To 1 0 0a r r(i)=I nt
48、(R nd*1 0 0 0)N ext iM a x =a r r(l)M i n=a r r(l)Fo r i=1 To 1 0 0I f 7 Th enM a x =a r r(i)E nd I fI f 8 Th enM i n=a r r(i)E nd I fN ext iP r i nt HM a x =;M a x,M i n=,;M i nE nd Sub程序运行后,单击命令按钮,将产生1 0 0个1 0 0 0以内的随机整数,放入数组a r r中,然后查找并输出这1 0 0个数中的最大值M a x和最小值Min,请填空。解析:由条件判断可以得知,在7 处的意思是将最大值M a
49、x中的数与a r r中的数相比较,【8】处的意思是将最小值M i n中的数与a r r中的数相比较。答案:【7】M a x a r r(i)9.1.2考点2:默认数组所谓默认数组,就是数据类型为Va r i a nt(默认)的数组。在一般情况下,定义数组应指明其类型。例如:Static Elec(1 To 100)As Integer该语句定义了 个数组E le c,该数组的类型为整型,它有10。个元素,每个元素都是个整数。但如果使用语句:Static Elec(l To 100)则定义的数组是默认数组,没有指定类型,则类型默认为V ariant,该语句等价于:Static Elec(1 To
50、 100)As Variant对于默认数组来说,同一个数组中可以存放各种不同的数据。因此,默认数组可以说是一种“混合数组”,这也就是默认数组的意义所在。例9.1.2 阅读下面程序并填空。Sub Form_Click()1Defau(l)=100Defau(2)=234.56Defau(3)=nCSAIDefau(4)=n20u&NowFor i=l To 4Print HDefau(n;I;)=;Defau(i)Next iEnd Sub答案:1 Static Defau(4)第10章键盘与鼠标事件本章主要考查键盘事件与鼠标事件,包括Keypress事件、。丫口(1咏 6丫 5 事件、鼠标事件