版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第1章应试指南(略)
第数据结构与算法(公共基础部分)
第3程序设计基础(公共基础部分)
第4软件工程基础(公共基础部分)
第5数据库设计基础(公共基础部分)
第6VB程序设计的初步知识
第:数据输入输出7.1.2与Print方法有关的函数
7.1.4Cis方法与Move方法7.1.5MsgBox函数
第8章VisualBasic控制结构8.1.1Hf函数
第9数组与过程9.1.2默认数组
第10章键盘与鼠标事件10.1.1KeyDown和KeyUp事件
第1I可视化程序设计11.1.2弹出式菜单
第12串数据文件
第13章笔试模拟试卷及解析(略)
第14章机试指导、分类解析及模拟(略)
第2章数据结构与算法
本章节主要考查算法的基本概念、基本的数据结构及其基本操作、查找和排序算法。本章
的内容在历次试题中所占的比例约为11.2%,都是以选择题和填空题的形式出现的。
2.1.1考点1:算法的定义
算法是对一个问题求解步骤的一种描述,是求解问题的方法,它是指令的有限序列,其
中每条指令表示一个或者多个操作。一般来说,一个算法具有以下5个主要的特征。
(1)有穷性:一个算法(对任何合法的输入)在执行有穷步后能够结束,并且在有限的
时间内完成。
(2)确定性:算法中的每一步都有确切的含义。
(3)可行性:算法中的操作能够用已经实现的基本运算执行有限次来实现。
(4)输入:一个算法有零个或者多个输入,零个输入就是算法本身缺定了初始条件。
(5)输出:一个算法有•个或者多个输出,以反映出数据加工的结果。
例2.1.1问题处理方案的正确而完整的描述称为o[2005年4月填空第5题]
答案:算法
例2.1.2一个算法应该具有“确定性”等5个特性,下面对另外4个特性的描述中错误的是
()。
A.有零个或多个输入B.有零个或多个输出
C.有穷性D.可行性
答案:B
例2.1.3算法具有5个特性,以下选项中不属于算法特性的是()。
A.有穷性B.简洁性C.可行性D.确定性
答案:B
第3章程序设计基础
本章主要考查程序设计的一些基本知识,比如程序设计的方法与风格、结构化程序设计与
面向对象程序设计的基本思想。从历次的试题来看,本章试题分值约占2.4%,属于非重点
考查对象。尽管分值所占的比例较少,但基本上每次至少有一道试题。试题以选择和填空
的形式出现。
3.1程序设计
该节知识点所占试题比重为17%,属于非重点考查对象。到目前为止,该知识点只出
过一道选择题。从考试大纲来看,主要考查程序设计的方法、程序设计风格。
3.1.1考点1:程序设计的方法
程序是指令的有序集合,它是为了解决某一问题而设计的一系列指令。程序设计是使用计
算机系统的指令或语句,组成求解不同问题,实现不同算法所需的完整序列的一个工作过
程。随着计算机硬件技术的发展以及计算机技术的广泛应用,根据需求程序设计的方法也
经过了几个发展的过程。
在程序设计早期,由于受到计算机硬件的限制,运行速度慢,存储空间少,使得程序
员不得不提高程序的效率,在这种情况下,编程成了一种技巧和艺术,程序的可理解性和
可扩充性没有得到重视。在这个时期出现的高级语言有Fortran、COBOL.ALGOL.Basic
等语言,在这个时期不注重程序的结构,可以说这是没有固定程序设计方法的时期。
计算机硬件得到了很大的发展,在编程的时候,运行速度和存储空间不再困扰程序员,
计算机技术应用范围的扩大使得程序必须要有良好的结构,在这种需求下,提出了结构化
程序设计方法。这时出现的高级语言有PASCAL、C等。20世纪60年代后期,提出了类
和对象的概念,程序设计已经不是问题的中心,如何更好地描述问题已经成为了主题,因
此在这种情况下,面向对象的程序设计方法发展起来了,并得到广泛地应用。进入20世纪
80年代后,出现了一系列的面向对象程序设计语言,如C++等。
下面我们会详细讨论结构化程序设计和面向对象程序设计。
3.1.2考点2:程序设计的风格
我们在编写程序时要养成良好的程序设计习惯,对程序的要求不仅能够在计算机上正
确运行,而且要便于阅读和被别人理解,便于程序的调试和维护。好的程序设计风格有助
于提高程序的正确性、可读性、可维护性和可用性。要使程序具有良好的风格,概括起来
可以分成4部分:源程序文档化、数据说明、语句结构、输入/输出方法。
1.源程序文档化
源程序文档化主要包括:标识符的命名、程序中添加注释以及程序的编辑风格。
(1)标识符的命名
标识符即符号名,包括变量名、模块名、常量名、标号名、函数名、数据区名和缓冲
区名等。一个程序中必然有很多的标识符,特别是在一个复杂大型的程序中,标识符可能
成千上万,对标识符作用的正确理解是读懂程序的前提,如果程序员随意命名标识符,程
序的可读性会很差。
因此,标识符的命名应该要规范化,具体要根据下面几个原则来命名。
①选取有实际意义的标识符名称。为了方便理解标识符的作用,标识符的名字要能够
反映其作用,如用于存储数量的变量的名称可以是count等。
②为了便于程序的输入,标识符的名字不宜太长。必要时可以用一些缩写,但是要注
意缩写规则要一致,并且要给每一个变量加上注释。
③为了便于区分,不同的标识符不要取过于相似的名字。
④由于程序中通常需要大量不同类型的标识符,为了使说明部分阅读起来更加清晰,
在对其进行类型说明时应注意以下几点:按照某种页序对各种类型的变量进行集中说明,
如先说简单类型,再说明记录类型;在使用一个说明语句对同一类型的多个变量进行说明
时,按照变量名中的字母顺序进行排列。
(2)不辨中加注释
注释是程序员与日后的程序读者之间通信的重要工具,用自然语言或伪码描述。它说
明了程序的功能,特别在维护阶段,对理解程序提供了明确指导。一些正规的程序文本中,
注释行的数量占到整个源程序的1/3~1/2,甚至更多。注释分序言性注释和功能性注释。
①序言性注释:一般置于每个程序模块的开头部分,它应当给出程序的整体说明,用
来引导读者理解程序。主要描述内容可以包括:程序标题、程序功能说明、主要算法、接
口说明、有关数据描述、程序位置、开发简历、程序设计者、复审者、复审日期和修改日
期等。
②功能性注释:一般置于程序体中,用来描述其后的语句或程序段是用来做什么的,
或者是执行了其下面的语句或程序段会产生什么样的效果,而不要解释下面该怎么做。
(3)程序的编辑风格
为了使程序的结构一目了然,可以在程序中利用空格、空行、缩进等技巧使程序层次
清晰,便于程序的理解。可以按照以下几个原则来编辑程序。
①恰当地利用括号,可以突出运算的优先性,避免发生运算错误。
②程序段之间可用空行隔开。
③对于选择语句和循环语句,应该做适当的缩进,使得程序的逻辑结构更加清晰。
2.数据说明
在程序设计时,应该注意数据说明的风格。为了使数据定义更易于理解和维护,有以
下指导原则。
(1)数据说明顺序应规范化,使数据的属性更易于查找,从而有利于测试、纠错与维
护。原则上,数据说明的次序与语法无关,其次序是任意的,但是便于阅读和理解,最好
使其规范化,使说明次序按照某种规则固定。例如,按以下顺序:常量说明、类型说明、
全程量说明及局部量说明。
(2)语句中变量的说明应有序化,多个变量在同一个说明语句中说明时,各变量名按
字典序排列。
(3)使用注释来说明复杂的数据结构时,要说明在程序实现这个数据结构时的特点。
3.语句康
单个语句结构是编码阶段的任务,语句结构追求简单直接,不能为了追求效率而使代
码复杂化。我们可以根据下面的原则来构造语句。
①为了便于阅读和理解,不要一行多个语句。
②不同层次的语句采用缩进形式,使程序的逻辑结构和功能特征更加清晰。
③要避免复杂的判定条件,避免多重的循环嵌套。
④表达式中使用括号以提高运算次序的清晰度。
⑤程序编写首先应当考虑程序结构的清晰性,不要刻意追求技巧性,使得程序复杂。
⑥除非对效率有特殊要求,否则先要考虑程序的清晰性,不要追求高效率而丧失程序
的清晰度。
⑦程序编写要简单,要直截了当地表达出程序员的用意。
⑧首先要保证程序正确,然后才要求提高速度。
⑨避免使用临时变量而使程序可读性下降。
⑩尽可能使用库函数。
4.输入和输出
输入和输出是程序的一个重要的组成部分,是用户和计算机交互直接相关的。输入和
输出的方式应当尽量方便用户的使用。一定要避免输入输出的不当而导致用户使用软件麻
烦。因此,在软件需求分析阶段和设计阶段,就应基本确定输入和输出的风格。软件能否
被用户接受,有时就取决于输入和输出的风格。
一个良好的输入输出风格能够使用户很方便地使用系统,我们在编码阶段可以根据下
面的原则来设计一个好的输入输出。
①对所有输入的数据都要进行有效性检查,要能够识别出错误的输入,对错误的输入
做出异常处理,使得每个输入数据都具有有效性。
②检查输入数据项的各种重要组合的合理性,必要时报告输入状态信息。
③在输入时,输入的步骤和方式应该尽量简单。
④输入数据时,应允许使用自由格式输入。
⑤允许默认值
⑥输入一批数据时,最好使用输入结束标志,而不要用户指定输入数据数目。
⑦在交互输入时,要给用户提示信息,如可使用选择项的种类和取值范围,在输入结
束时,给出状态信息。
⑧当程序设计语言对输入/输出格式有严格要求时,应保持输入格式与输入语句的要求
的一致性。
⑨给所有的输出加注解,并设计输出报表格式。
例3.1.1以下叙述中错误的是()。[2005年9月选择第11题]
A.用户所定义的标识符允许使用关键字
B.用户所定义的标识符应尽量做到“见名知意”
C.用户所定义的标识符必须以字母或下划线开头
D.用户定义的标识符中,大、小写字母代表不同标识
答案:A
第4章软件工程基础
本章主要掌握以下几个方面内容。
(1)软件工程的基本概念、软件生命周期概念、软件工具和软件开发环境;
(2)结构化分析方法、数据流图、数据字典和软件需求规格说明书;
(3)结构化设计方法、总体设计和详细设计
(4)软件测试的方法、白盒测试与黑盒测试、测试用例设计、软件测试的实施、单元测
试、集成测试和系统测试;
(5)程序调试、静态调试与动态调试;
(6)软件维护。
通过对历次试卷内容的分析,软件工程考核内容占卷面分数6.8%。
4.1软件工程的基本概念
软件工程的基本概念所涉及的试题分值在本章中所占比重为16%
4.1.1考点1:软件与软件工程概述
1.软件的定义
软件是程序、数据与相关文档的集合,相对于计算机硬件而言,软件是逻辑产品而不是
物理产品,是计算机的无形部分。
软件包括系统软件和应用软件。系统软件是计算机管理自身资源,提高计算机使用效率
而编写的软件。系统软件依赖于机器的指令系统、中断系统,以及运算、控制、存储部件
和外部设备。系统软件包括操作系统(如Windows、UNIX、Linux、Macintosh等)、各种
语言编译的编译程序、数据库管理系统、文件编辑系统、系统检查与诊断软件等。应用软
件是专门为了某种使用目的而编写的程序系统,常用的有文字处理软件(如WPS和
Word)、专用的财务软件、人事管理软件、计算机辅助软件(如AutoCAD)和绘图软件
(如3DS)等。
与硬件相比,软件的特点包括:
(1)软件是一种逻辑实体;
(2)软件的生产与硬件不同,它没有明显的制作过程;
(3)软件在运行、使用期间不存在磨损、老化问题;
(4)软件的开发、运行对计算机系统具有依赖性,受计算机系统的限制,这导致了软件
存在移植的问题;
(5)软件复杂性高,成本昂贵;
(6)软件开发涉及诸多的社会因素。
2.软件工程的定义
随着计算机的应用范围“益广泛,传统的软件开发成本难以控制,进度不可预计;软件
系统的质量和可靠性很差;软件文档相当缺乏,软件系统不可维护;软件开发生产率很低,
软件产品供不应求;软件产品成本十分昂贵等特点「I益显现,成为计算机应用的一个“瓶
颈”,出现了所谓的“软件危机”。1968年,北大西洋公约组织(NATO)召开计算机科学会
议,首次提出了软件工程的概念,试图用工程化的方法开发软件,从而解决或缓解软件危
机。
软件工程是采用工程化的方法开发和维护软件的工程学科。把经过时间考验而证明正确
的管理技术和当前能够得到的最好的技术和方法结合起来,以便经济地开发出高质量的软
件并有效地维护它。软件工程包括3个要素,分别是方法、工具和过程。
软件工程的基本思想是在软件开发过程中需要应用工程化原则进行软件开发,并将这个
思想贯穿到软件开发的整个过程中O
软件工程的目标是在给定成本、进度的前提下,利用工程化原则,开发出具有可修改性、
有效性、可靠性、可理解性、可维护性、可重用性、可适用性、可移植性、可追踪性和可
互操作性并满足用户需求的软件产品。
3.例题
例4.1.1下列描述中正确的是()。[2005年4月选择第8题]
A.程序就是软件B.软件开发不受计算机系统的限制
C.软件既是逻辑实体,又是物理实体D.是程序、数据与相关文档的集合
答案:D
例4.1.2下列描述中正确的是()。[2005年9月选择第5题]
A.软件工程只是解决软件项目的管理问题
B.软件工程主要解决软件产品的生产率问题
C.软件工程的主要思想是强调在软件开发过程中需要应用工程化原则
D.软件工程只是解决软件开发中的技术问题
答案:C
第5章数据库设计基础
本章主要掌握以下几个方面内容。
(1)数据库的基本概念、数据库、数据库管理系统和数据库系统;
(2)数据模型、实体联系模型、E-R图和从E-R图导出关系数据模型;
(3)关系代数运算(包括集合运算及选择、投影、连接运算)和数据库规范化理论;
(4)数据库设计方法和步骤、需求分析、概念设计、逻辑设计和物理设计的相关策略。
通过对历次试卷内容的分析,本章考核内容占卷面分数8.8%。
5.1数据库基础知识
信息在现代社会中起着越来越重要的作用,信息资源的开发和利用水平已成为衡量一个
国家综合国力的重要标志。在计算机应用领域中,数据处理是其主要方面。数据库技术就
是作为数据处理中的一门技术而发展起来的。本节介绍数据库系统的基本概念和发展历史,
初步了解数据库系统的概貌。
数据库基础知识所涉及的试题分值在本章中所占比重为41%,
5.1.1考点1:数据库
数据库(Database,DB)可以看成是长期存储在计算机内的、大量的、有结构的和可共
享的数据集合。数据是描述现实世界中各种具体事物和抽象概念的可存储并有明确意义的
信息。
数据库可以被直观地理解为存放数据的仓库,只不过这个仓库是在计算机的大容量存储
器上,例如,硬盘就是一种最常见的计算机大容量存储设备。数据必须按一定的格式存放,
因为它不仅需要存放,而且还要便于查找。
数据库的特点如下
(1)数据按一定的数据模型组织、描述和储存。
(2)冗余度较小。数据共享大大减少了数据冗余。
(3)数据独立性较高。数据独立性是数据库领域中一个常用的术语,也是数据库技术的
重要特点之一。数据独立性是指数据的组织结构和存储方法与应用程序互不依赖、彼此独
立。它包括数据的物理独立性和数据的逻辑独立性。物理独立性是指用户的应用程序与存
储在磁盘上的数据库中的数据是相互独立的,也就是当数据的物理存储改变了,用户程序
也可以不变。逻辑独立性是指用户的应用程序与数据库的逻辑结构是相互独立的,也就是
说,数据的逻辑结构改变了,用户程序也可以不变。
(4)易扩展。
(5)可为各种用户共享。不同的用户可以使用同一个数据库,可以取出他们所需要的子
集,而且容许子集任意重叠。
例5.1.1数据独立性是数据库技术的重要特点之一。所谓数据独立性,是指().[2005
年4月选择第9题]
A.数据与程序独立存放
B.不同的数据被存放在不同的文件中
C.不同的数据只能被对应的应用程序所使用
D.以上三种说法都不对
答案:D
例5.1.2数据库设计的根本目标是要解决()。[2005年9月选择第8题]
A.■共享问题B.数据安全问题
C.大量数据存储问题D.简化■维护
答案:A
例5.1.3下列叙述中正确的是()。[2004年9月选择第9题]
A.数据库系统是一个独立的系统,不需要操作系统的支持
B.数据库设计是指设计数据库管理系统
C.数据库技术的根本目标是要解决数据共享的问题
D.数据库系统中,数据的物理结构必须与逻辑结构一致
答案:C
第6章VisualBasic程序设计的初步知识
本章主要考查关于VisualBasic概述、VisualBasic程序开发环境、VisualBasic常用对象
及其操作、VisualBasic应用程序基本操作、VisualBasic常用数据类型、VisualBasic中的
常量和变量、VisualBasic常用内部函数、VisualBasic字符串处理、VisualBasic运算符与
表达式和VisualBasic常用标准控件等内容。通过对历年试卷内容的分析,本章考核内容约
占卷面分数30%,属于重点考查对象。由命题走势图可知,本章内容所涉及考题分值有下
降趋势,但是考生绝不能掉以轻心,因为本章内容是整个VisualBasic语言的基础,并且在
试题中本章所占比例较大,近年来考题分值一直保持在25分左右,因此考生应重点复习。
6.1VisualBasic概述
考点1:VisualBasic的特点和版本
1.VisualBasic的特点
VisualBasic是在Basic语言基础上研制而成的,它具有Basic语言简单而不贫乏的优点,
同时增加了结构化和可视化程序设计语言的功能。
VisualBasic是一种可视化的、面向对象和采用事件驱动方式的结构化高级程序设计语言,
可用于开发Windows环境下的各类应用程序。
总起来说,VisualBasic有以下主要特点:
(1)可视化编程;
(2)面向对象的程序设计;
(3)结构化的程序设计语言;
(4)事件驱动编程机制;
(5)访问数据库。
与传统的编程语言相比,VisualBasic最突出的特点是可视化编程。
2.VisualBasic的版本
VisualBasic6.0包括3种版本,分别为学习版、专业版和企业版。
(1)学习版
VisualBasic的基础版本,可用来开发Windows应用程序。该版本包括所有的内部控件
(标准控件)、网格(Grid)控件、Tab对象以及数据绑定控件。
(2)专业版
该版本为专业编程人员提供了一整套用于软件开发、功能完备的工具。它包括学习版的
全部功能,同时包括ActiveX控件、Internet控件、CrystalReportWriter和报表控件。
(3)企业版
可供专业编程人员开发功能强大的组内分布式应用程序。该版本包括专业版的全部功能,
同时具有自动化管理器、部件管理器、数据库管理工具、MicrosoftVisualSourceSafe面向
工程版的控制系统等。
在这3种版本中,企业版最全;而专业版包括了学习版的功能,用户可根据自己的需要
选择不同的版本。
例6.1.1以下关于VisualBasic特点的叙述中,错误的是()。[2006年4月选择第11
A.VisualBasic是采用事件驱动编程机制的语言
B.VisualBasic程序既可以编译运行,也可以解释运行
C.构成VisualBasic程序的多个过程没有固定的执行顺序
D.VisualBasic程序不是结构化程序,不具备结构化程序的三种基本结构
答案:D
第7章数据输入输出
本章主要考查数据输入输出方法,包括数据输出方法、数据输入方法、字形设置与打印
输出等内容,本章内容通常与其他章节知识点结合起来考。通过对历年试卷内容的分析,
本章考核内容约占4%,属于非重点考查对象
7.1数据输出方法
7.1.1考点1:print方法
Print方法可以在窗体上显示文本字符串和表达式的值,并可在其他图形对象或打印机上
输出信息。
Print方法的一般格式如下:
[对象名称.]Print[表达式]口;]
说明:
“表达式”是一个或多个表达式,可以是数值表达式或字符串。
当输出多个表达式或字符串时,各表达式用分隔符(逗号、分号或空格)隔开。如果输
出的各表达式之间用逗号分隔,则按标准输出格式(分区输出格式)显示数据项。在这种
情况下,以14个字符位置为单位把一个输出行分为若干个区段,逗号后面的表达式在下一
个区段输出。如果各输出项之间用分号或空格作为分隔符,则按紧凑输出格式输出数据。
Print方法具有计算和输出双重功能.对于表达式,它先计算后输出。
在一般情况下,每执行一次Print方法后会自动换行。为了仍在同一行上显示,可以在末
尾加上一个分号或逗号。
例7.1.1以下语句的输出结果是[2005年4月填空第6题]
PrintInt(12345.6789*100+0.5)/100
解析:12345.6789*100+0.5=1234568.39,Int(12345.6789*100+0.5)=1234568,最后结
果为12345.68。
答案:12345.68
7.1.2考点2:与Print方法有关的函数
在Print方法中经常使用Tab函数、Spc函数和Space函数,使信息按指定的格式输出。
1.Tab(n)函数
Tab(n):用于把光标往后移动n个字符的位置,从这个位置开始输出信息。要输出的内
容放在Tab函数的后面,并用分号隔开。
例如:
PrintTab(25);800
说明:
①参数n为数值表达式,其值为一个整数,它是下一个输出位置的列号,表示在输出前
把光标移到该列。最左边的列号为1,如果当前的显示位置已经超过n,则自动下移一行。
②在VisualBasic中,对参数n的取值范围没有具体限制。当n比行宽大时,显示位置为
nMod行宽;如果n<l,则把输出位置移到第一列。
③当在一个Print方法中有多个Tab函数时,每个Tab函数对应一个输出项,各输出项之
间用分号隔开。
2.Spc(n)函数
Spc(n)函数与Tab函数类似,用于跳过n个空格输出。与Tab函数的区别是,Tab函数从
第一列开始计数,n是绝对偏移量。而spc函数则是从前面的输出项后开始计数,n是相对
偏移量。
例如:
Print**CHINA,,;Spc(8);,,CSAr,
该语句首先输出“CHINA”,然后经过8个空格,显示“CSAI”。
说明:
参数n是一个数值表达式,其取值范围为0〜32767的整数。Spc函数与输出项之间用
分号隔开。
Spc函数与Tab函数的作用类似,而且可以互相代替。
3.Space$(n)
SpaceS(n):用于返回n个空格。
例7.1.2Tab函数用于把光标往后移动到自己需要的位置,它与输出的内容要用符
号隔开。
答案:分号(;)
7.1.3考点3:格式输出(Format$)
Format$用于把数值和日期型的数据按指定的格式输出。Format$的一般格式如下:
Format$(数值表达式,格式字符串)
说明:如果省略格式字符串,则把数值表达式的值转换成字符串。在这种情况下Format
$函数的功能与$什$函数基本相同,惟一的差别是当把正数转换成字符串时,Str$函数
在字符串前面留有一个空格,而Format$函数则不留空格。其作用见下表。
格式字符串及其作用
字符作用
〃#〃表示数字,不在数值字符串的前面或后面补0
”0〃表示数字,宽度不足时,在数值字符串的前面或后面补0
〃〃
指定小数点的位置
〃〃
指定千位分隔符的位置(不能放在头部或尾部)
〃%〃指定百分比符号的位置
〃$〃
指定美元符号的位置
〃-/+〃指定正号和负号的位置
“E+/E-”指定数字符号的位置
例如:使用以下事件过程测试数值的格式化输出。
PrivateSubForm_Click()
PrintFormat$(25634,“########")
PrintFormat$(25634,"00000000M)
Pr血Format$(256.34,"0000.00")
PrintFormat$(256.34,
PrintFormat$(12345.67,"####,#.##")
PrintFormat$(12345.67,
PrintFormat$(12345.6,H###,##0.00H)
PrintFormat$(12345.6,"$###,#0.00n)
PrintFormat$(12345.6,H-###,##0.00")
PrintFormat$(0.123,H0.00%")
PrintFormat$(12345.6,n0.00E+00n)
PrintFormat$(0.1234567,n0.00E-00n)
PrintFormat$(12345.67,n,#####.##M)错误
PrintFormat$(12345.67,”#####,.##")'错误
EndSub
上述过程运行后,单击窗体,输出结果如图7・2所示。
图7-2数值格式化输出
7.1.4考点4:Cis方法与Move方法
1.Cis方法
Cis方法用于清除通过画图方法画出的图形或者用Print语句打印的信息,并把光标移到
对象的左上角(0,0)o这里的对象可以是窗体或图片框,如果省略“对象”则清除当前窗
体内的显示内容。
Cis方法的一般格式为:
对象名.Cis
例如:
Picture】.Cis'清除图片框Picture1内的图形或文本
Cis'清除当前窗体内显示的内容
说明:
如果AutoRedraw=False,则Cis方法不能清除在AutoRedraw为True时所产生的图形和
打印的信息。
清除后,当前座标回到对象的左上角。
当窗体的背景是用Picture属性装入的图形时,不能用Cis方法清除,只能通过
LoadPicture方法清除。
2.Move方法
Move方法用来移动窗体和控件,并可改变其大小。Move方法的一般格式如下:
[对象.]Move左边距离[,上边距离][,宽度[,高度]]]
例如:在窗体上画一个文本框和一个图片框,在窗体的单击事件中编写如下代码,改变
窗体、文本框利图片框的大小和位置。程序运行后,窗体的单击事件触发前后的结果分别
如图7-3和图74所示。
PrivateSubForm_Click()
Move800,800,4000,2600
Textl.Move200,200,1500,1000
Picture1.Move1800,200,1500,1000
Picture1.Print"Picture1”
EndSub
图7-3窗体单击事件触发前界面图7-4窗体单击事件触发后界面
说明:
Move方法中的“对象”可以是窗体以及除计时器(Timer)、菜单(Menu)之外的所有
控件,如果省略“对象”,则表示要移动的是窗体。“左边距离”、“上边距离”、“宽度”及"高
度”均以twip(缓)为单位。
如果“对象”是窗体,贝U“左边距离”和“上边距离”均以屏幕左边界和上边界为准;
如果“对象”是控件,则以窗体的左边界和上边界为准。
3.TextHeight和TextWidth方法
这两个方法用来辅助设置坐标。其中TextHeight方法返回一个文本字符串的高度值,而
TextWidth方法则返回一个文本字符串的宽度值,单位均为twip(堤)。
属性ScaleHeight和ScaleWidth分别用来表示对象的高度和宽度值,它们与方法
TextHeght和TextWidth结合使用,可以使字符串居中显示。
属性Height和Width可用来返回或设置窗体、控件、打印机及屏幕的高度和宽度,而
Left和Top属性分别用来返回或设置窗体、控件与其左边和顶边的距离,它们的单位均为
Twip(统)。
例如:编写程序,使字符串居中。
PrivateSubForm_Click()
FontSize=16
Samples=HChinaCsai中国系统分析员”
Print”字符宽/高:",TextWidth(Sample$);TextHeight(Sample$)
x=(ScaleWidth-TextWidth(SampIeS))/2
y=(ScaleHeight-TextHeight(Sample$))/2
CurrentX=x
CurrentY=y
PrintSampleS
EndSub
程序运行后,单击窗体,结果如图7-5所示•
图7-5字符串居中显示
例7.1.4把控件移到相应的位置,并能改变其大小的方法是()。
A.CisB.MoveC.formatD.Tab
答案:B
7.1.5考点5:MsgBox函数
MsgBox函数的一般格式如下:
MsgBox(msg[,type][>title][,helpfile,context])
功能:MsgBox函数用于在用户操作时,显示一个提示性的对话框,以提示用户进行
后面操作的选择。
MsgBox函数的参数及其作用见下表。
MsgBox函数的参数及其作川
参数含义
prompt显示提示用户的字符串,在对话框内显示,不超过1024个字符
type整数或符号常量,控制按钮和图标的种类和数量表
title显示对话框的标题
helpfile字符串表达方式,用于指明帮助文件的名字
context数值表达方式,表示相关的帮助主题或目录号
MsgBox函数的返回值见下表。
MsgBox函数的返|可值
操作返回值符号常量
选“确定”按钮1vbOk
选“取消”按钮2vbCancel
选“终止”按钮3vbAbort
选“重试”按钮4vbRetry
选“忽略”按钮5vblgnore
选“是"按钮6vbYes
选“否”按钮7vbNo
例如:编写程序,用MsgBox函数判断是否继续执行。
PrivateSubForm_Click()
msgS="请确认数据是否正确”
Title$=”数据检查“
x=MsgBox(msg$,19,Title$)
Ifx=6Then
Printx*x
Elselfx=7Then
Print"请重新输入”
EndIf
EndSub
程序运行后,单击窗体,弹出如图7-6所示的对话框。如果选择“是"按钮,则返回值
为6,在窗体上打印出36;如果选择“否”按钮,则返回值为7,在窗体上打印出“请重新输
入
图7-6MsgBox函数对话框
例7.1.5假定有如下的命令按钮(名称为Commandl)事件过程:
PrivateSubCommandl_Click()
x=InputBox(“输入:”,输入整数”)
MsgBox”输入的数据是:“,,”输入数据:“+x
EndSub
程序运行后,单击命令按钮,如果从键盘上输入数10,则以下叙述中错误的是()。
[2006年4月选择第19题]
A.x的值是数值10
B.输入对话框的标题是“输入整数”
C.信息框的标题是“输入数据:10”
D.信息框中显示的是“输入的数据是:”
答案:A
7.1.6考点6:MsgBox语句
MsgBox函数也可以写成语句形式,即:
MsgBoxMsg$[,type%][,title$][,helpfilc,context]
各参数的含义及作用与MsgBox函数相同,由于MsgBox语句没有返回值,因而常用
于较简单的信息显示。
例7.1.6MsgBox函数的返回类型是()。
A.字符型B.数值型C.日期型D.没有返回值
答案:B
重点提示:考生在考试中应当注意MsgBox函数返回值与MsgBox语句的返回值不同,
MsgBox函数返回值为数值,而MsgBox语句则没有返回值。
第8章VisualBasic控制结构
本章主要考查VisualBasic程序设计常用的控制结构,包括分支控制结构、循环控制结构
和GoT。型控制结构。通过对历年试卷内容的分析,本章考核内容约占10%,属于一般考
查对象。本章内容下次考试将有上升趋势。
8.1分支控制结构
8.1.1考点1:单行结构条件语句
单行条件语句的格式如下:
If条件Thenthen部分[Elseelse部分]
其功能为:如果“条件”为True,则执行“then部分”,否则执行“else部分”。其中的“else
部分''是可选的,当其省略时,If语句简化为:
If条件Thenthen部分
其功能为:如果“条件”为True,则执行“then部分”,否则执行下一行程序。
条件语句中的“then部分”和“else部分”都可以嵌套,其深度(嵌套层数)没有具体规定,
但受到每行字符数(1024)的限制。当嵌套层数较多时,应注意嵌套的正确性,一般原则
是:每一个“Else”部分都与它前面未曾被配对的“If-Then”配对。
例8.1.1当x=-5时,执行下述代码后,x的值为()。
Ifx>=0ThenIfx>0Theny=1Elsey=0Elsey=-1
A.1B.0C.-1D.以上都不正确
答案:C
8.1.2考点2:块结构条件语句
块结构条件语句与C、Ada等语言中的条件语句类似,一般格式如下:
If条件1Then
语句块1
[Elself条件2Then
语句块2]
[Elself条件3Then
语句块3]
[Else
语句块n]
EndIf
其功能为:如果“条件1”为True,则执行“语句块1”;如果“条件2”为True,则执行“语
句块2”……则执行“语句块n”。
该语句中的“语句块”可以是一个语句,也可以是多个语句。当是多个语句时,可以分别
写在多行里;如果写在一行中,则各语句之间用冒号隔开。
说明:
该语句中的“条件1”、“条件2”等都是逻辑表达式,通常数值表达式和关系表达式都是逻
辑表达式的特例。
“语句块''中的语句不能与前面的Then在同--行,否则VisualBasic认为是一个单行结构
的条件语句。
在块结构的条件语句中,Elself子句的数量没有限制,可以根据需要加入任意多个Elself
子句。
块结构条件语句中的Elself子句和Else子句都是可选的。
当If结构体内有多个条件为True时,VisualBasic执行第一个为True的条件后面的语句
块。
块形式的条件语句可以嵌套,嵌套时必须完全“包住”,不能互相"骑跨
例8.1.2函数A()、B()、C()分别实现三种不同的功能,令X=l、Y=-4、Z=0,
那么下述代码的功能是()。
If(X>0)Then
A()
Elself(Y<10)Then
B()
Elself(Z<3)Then
C()
EndIf
A.执行函数A()B.执行函数B()C.执行函数C()D.以上都不正确
答案:A
8.1.3考点3:Ilf函数
Hf函数可以用来执行简单的条件判断操作,它是“If...Then…Else”结构的简写版本,是
“ImmediateIf的缩略。其格式如下:
result=llf(条件,True部分,False部分)
其中,“result”是函数的返回值,“条件”是一个逻辑表达式。当“条件”为真时,Of函数返
回“True部分”,否则返回“False部分”。“True部分”或“False部分”可以是表达式、变量或其
他函数。该函数与C语言中“?:”运算符的功能相似,可以使程序大为简化。
例8.1.3设2="葭,b="b",c="c",d=“d”,执行语句x=Hf((a<b)Or(c>d),“A”,
“B”)后,x的值为()。[2005年4月选择第15题]
A."a"B."b"C."B"D."A”
答案:D
重要提醒:使用Hf函数时,其中的三个参数都不可以省略,而且要求“True部分”、
“False部分”及结果变量的类型一致。此外,山于Uf要计算“True部分”和“False部分”,因
此有可能会产生副作用。
8.1.4考点4:多分支控制结构
多分支控制结构由情况语句(Select语句或Case语句)构成,它可以根据一个表达式的
值,在一组相互独立的可选语句序列中挑选要执行的语句序列。情况语句是块形式条件语
句的一种变形,其格式如下:
SelectCase测试表达式
Case表达式表列1
[语句块2]]
[Case表达式表列2
[语句块2]]
[CaseElse
[语句块n]]
EndSelect
其功能是,根据“测试表达式”的值,从多个语句块中选择符合条件的一个语句块执行。
其中,”测试表达式”可以是数值表达式或字符串表达式,通常称为变量或常量;“语句块1、
语句块2……语句块n"山一行或多行合法的VisualBasic语句组成。“表达式表列1、表达
式表列2……表达式表列n»称为域值,可以采用下述三种形式:表达式[,表达式]、表达
式To表达式、Is关系运算表达式。
对于这种控制结构,需要掌握以下几点:
SelectCase语句与If…Then…Else语句块的功能类似,二者可以互换使用°
和C语言不同,如果同一个域值的范围在多个Case子句中出现,则只执行符合要求的第
一个Case子句的语句块。
CaseElse子句必须放在所有的Case子句之后,如果SelectCase结构中任何一个Case子
句都没有与测试表达式相匹配的值,而且也没有CaseElse子句,则不执行任何操作。
在不同的Case子句中指定的条件和相应的操作不能相互矛盾。
例8.1.4在窗体上画1个命令按钮(名称为Command1)和1个文本框(名称为
Textl),然后编写如下事件过程:
PrivateSubCommandl_Click()
x=Val(Textl.Text)
SelectCasex
Case1,3
y=x*x
CaseIs>=10,Is<=-10
y=x
Case-10To10
y=-x
EndSelect
EndSub
程序运行后,在文本框中输入3,然后单击命令按钮,则以下叙述中正确的是()。
[2006年4月选择第20题]
A.执行y=x*xB.执行产-xC.先执行y=x*x,再执行y=-xD.程序出错
答案:A
重要提示:“表达式表列”中的三种形式,在使用时需要注意以下几点:
关键字To用来指定一个范围,此时,必须把较小的值写在前面,较大的值写在后面,
字符串常量的范围必须按字母的顺序写出。
如果使用关键字Is,则只能用关系运算符,并且条件只能是简单条件,不能用逻辑运算
符将两个或多个简单条件组合在一起。
在一个SelectCase语句中,三种形式可以混用。
第9章数组与过程
本章主要考查VisualBasic中的数组与过程,主要包括:数组基本概念、数组基本操作、
控件数组、Sub过程、Function过程、过程中的参数、局部内存分配和Shell函数。通过对
历年试卷内容的解析,本章考核内容约占18%,属于重点考查对象,但将保持下降趋势。
9.1数组基本概念
9.1.1考点1:数组的定义
数组是有序的数据的集合。在VisualBasic中,一个数组中的元素可以是相同类型的数据,
也可以是不同类型的数据。在VisualBasic中,可以有两种格式定义数组:
1.第一种格式
(1)一维数组
一维数组的定义一般格式如下:
Dim数组名(下标上界)As类型名称
例如:Dimscore(10)AsInteger
该语句定义了一个一维数组,名字为score,类型为Integer,共6个元素。
(2)二维数组
二维数组的定义一般格式如下:
Dim数组名(第一维下标上界,第二维下标上界)As类型名称
例如:DimstuScore(10,2)AsInteger
该语句定义了一个二维数组,名字为stuScore,类型为Integer,共11X3=33个元素。
2.第二种格式
(1)定义数组
在定义数组时,指定数组下标的上界和下界。语句一般格式如下:
Dim数组名([下界To]上界[,[下界To]上界]……)As类型名称
例如:Dimscore(1To5)
该语句定义了一个一维数组,下界为1,上界为5,共5个元素。
第二种格式实际上包含了第一种格式,只要省略“下界To",即变为第一种格式。
(2)语句说明
“数组名”与简单变量相同,可以是任何合法的VisualBasic变量名,在同一过程中,数组
名不能与变量名同名;
数组必须先定义后使用,并且每一维的元素个数必须是常数,不能是变量或表达式;
使用Dim语句定义数组时,数值数组中的全部元素初始化为0,字符串数组中的全部元
素初始化为空字符串;
一般情况下,下标的下界默认为0,可以使用OptionBasen(n只能为或1)改变下标的
默认为1;使用LBound和UBound函数可以获得数组的上、下界值;
如果下标值从0开始,则数组元素的个数为最大下标值加1,如果下标值从1开始,则
数组元素的个数与最大下标值相等。
3.定义数组的保留字
在VisualBasic中,定义数组时可使用4个保留字,以定义不同范围内的数组:
Dim:定义窗体模式或标准模块数组,也可用在过程中;
ReDim:用在过程中;
Static:用在过程中;
Public:用在标准模块中,定义全局数组。
例9.1.1在窗体上画1个命令按钮,其名称为Commandl,然后编写如下事件过程:
[2006年4月填空第7-8题]
PrivateSubCommandl_Click()
Dimarr(1To100)AsInteger
ForI=1To100
arr(i)=Int(Rnd*1000)
Nexti
Max=arr(l)
Min=arr(l)
Fori=1To100
If[7]Then
Max=arr(i)
EndIf
If[8]Then
Min=arr(i)
EndIf
Nexti
Print"Max=";Max,"Min-*;Min
EndSub
程序运行后,单击命令按钮,将产生100个1000以内的随机整数,放入数组an•中,然
后查找并输出这100个数中的最大值Max和最小值Min,请填空。
解析:由条件判断可以得知,在【7】处的意思是将最大值Max中的数与arr(i)中的数相
比较,【8】处的意思是将最小值Min中的数与arr⑴中的数相比较。
答案:【7】Max<arr(i)[8]Min>arr(i)
9.1.2考点2:默认数组
所谓默认数组,就是数据类型为Variant(默认)的数组。在一般情况下,定义数组应指
明其类型。
例如:
StaticElec(lTo100)AsInteger
该语句定义了一个数组Elec,该数组的类型为整型,它有100个元素,每个元素都是一
个整数。但如果使用语句:
StaticEIec(lTo100)
则定义的数组是默认数组,没有指定类型,则类型默认为Variant,该语句等价于:
StaticElec(lTo100)AsVariant
对于默认数组来说,同一个数组中可以存放各种不同的数据。因此,默认数组可以说是
一种“混合数组”,这也就是默认数组的意义所在。
例9.1.2阅读下面程序并填空。
SubForm_Click()
[1]
Defau(l)=100
Defau(2)=234.56
Defau(3)=MCSAF
Defau(4)="20"&Now
Fori=lTo4
Print"Defau(n;I;n)=M;Defau(i)
Nexti
EndSub
答案:【1】StaticDefau(4)
第10章键盘与鼠标事件
本章主要考查键盘事件与鼠标事件,包括KeyPress事件、KeyDown和KeyUp事件、鼠
标事件、鼠标光标的形状与拖放等知识点。通过对历年试卷内容的分析,本章考核内容约
占6%,属于一般考查对象。
10.1键盘事件
使用键盘事件过程,可以处理当按下或释放键盘上某个键时所执行的操作。
10.1.1考点1:KeyPress事件
当压下键盘上的某个键时,将发生KeyPress事件。该事件可用于窗体、复选框、组合框、
命令按钮、列表框、图片框、文本框、滚动条及与文件有关的控件。严格地说,当按下某
个键时,所触发的是拥有输入焦点(Focus)的那个控件的KeyPress事件。在某一时刻,
输入焦点只能位于某一个控件上,如果窗体上没有活动的或可见的控件,则输入焦点位于
窗体上。当一个控件或窗体拥有输入焦点时,该控件或窗体将接收从键盘上输入的信息。
例如,假定一个文本框拥有输入焦点,则从键盘上输入的任何字符都将在该文本框中回显。
在窗体上画一个控件(指前面所讲的可以发生KeyPress事件的控件),比如文本框,并
双击该控件,进入程序代码窗口后,从“过程”框中选取KeyPress,即可定义KeyPress事件
过程。一般格式如下:
PrivateSubTextl_KeyPress(KeyAsciiAsInteger)
EndSub
KeyPress事件带有一个参数,这个参数有两种形式,第一种形式是IndexAsInteger,只
用于控件数组;第二种形式是KeyAsciiAsInteger,用于单个控件。上面列出的是第二种形
式。KeyPress事件用来识别按键的ASCH码。参数KeyAscii是一个预定义的变量,执行
KeyPress事件过程时,KeyAscii是所按键的ASCII码。
说明:
利用KeyPress事件可以对输入的值进行限制;
利用KeyPress事件可以捕捉击键动作;
在KeyPress过程中可以修改KeyAscii变量的值。如果进行了修改,VisualBasic控件中
输入修改后的字符,而不是用户输入的字符。
例10.1.1以下关于KeyPress事件过程参数KeyAscii的叙述中,正确的是()。[2005
年9月填空第29题]
A.KeyAscii参数是所按键的ASCH码B.KeyAscii参数的数据类型为字符串
C.KeyAscii参数可以省略D.KeyAscii参数是所按键上标注的字符
解析:KeyPress事件带有一个参数,这个参数有两种形式。第一种形式是IndexAs
Int
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【正版授权】 ISO 5273:2025 EN Passenger car tyres - Preparation method for an artificially worn state for wet grip testing
- 二零二五版昆明公租房电子合同租赁合同争议解决途径与流程2篇
- 二零二五版教育培训项目合同范本共二十项条款3篇
- 2025版工业园区害虫防治与安全防护服务协议3篇
- 2025版信用社小微企业贷款业务合作协议3篇
- 酒店管理公司2025年度战略合作协议2篇
- 2025版临时工技能培训免责合同4篇
- 2025年度建筑装修工程合同标的质量验收:1、客户居住环境4篇
- 2025水面承包权经营与管理合同3篇
- 上海市房屋预售合同6篇
- 物业民法典知识培训课件
- 2023年初中毕业生信息技术中考知识点详解
- 2024-2025学年八年级数学人教版上册寒假作业(综合复习能力提升篇)(含答案)
- 《万方数据资源介绍》课件
- 第一章-地震工程学概论
- 《中国糖尿病防治指南(2024版)》更新要点解读
- 浙江省金华市金东区2022-2024年中考二模英语试题汇编:任务型阅读
- 青岛版(五四制)四年级数学下册全册课件
- 大健康行业研究课件
- 租赁汽车可行性报告
- 计算机辅助设计AutoCAD绘图-课程教案
评论
0/150
提交评论