本文介绍数组的基本操作。数组的基本操作包含:数组元素的输入输出、插入和删除元素、查询等。
数组元素的输入
在数组声明后,数组元素的值均为其数据类型的初始值,比如数值型初始值为0。因此,通常在正式使用数组前,我们需要为数组赋值。为数组元素赋值有几种方式。
方式一:像为变量赋值一样,逐一为每个元素赋值。
例如:
方式二:
采用Array函数为动态数组赋值,可以一次赋值多个元素。注意,此方法只能为变体型的动态数组赋值。
例如:
说明:
Array函数语法格式如下:语法:Array(arglist)作用:返回一个包含数组的 Variant。
Array函数中,所需的 arglist 参数是一个用逗号隔开的值表,这些值用于给Variant 所包含的数组的各元素赋值。如果不提供参数,则创建一个长度为0的数组。
方式三:
使用循环语句为数组中的元素赋值,此方法通常用于数据量较大时。
例如,为一个9*9的二维数组随机赋值1-100之间的数,代码如下:
该方法,也可以在其中使用InputBox函数来实现交互式输入。
数组元素的输出
所谓数组元素的输出就是获取数组元素的值。其方法与访问变量值类似。直接使用数组名(下标)的方式即可取出元素值。
举例:
以上面,数组元素的输入中方式三的例子来说,获取数组A的每个数组元素并打印出来,代码如下:
数组元素的插入
数组的插入是指在数组指定位置插入一个新的元素,其后面的元素全部依次往后顺延,其效果如下面两张图片所示:
由于对数组插入新的元素后,将会改变数组的长度,因此该方法只能针对动态数组而言。
运行效果如图所示:
删除数组元素
数组元素的删除与数组元素的插入是类似的,都会改变数组的长度,一个是增加长度,而另一个则是减少长度。其效果如下图所示:
数组元素的查找
查找操作,即需要在数组中查找指定的数据。需要采用遍历方法,即采用循环结构,将数组中的每一个元素取出,并与需要的数据比对,看是否是需要的结果。
举例,在一个二维数组中,存储了一个班级的学生姓名以及对应的成绩,输入一个
学生姓名后,可以查找其对应的成绩,如果没有查到则提示无此学生。程序界面如下:
程序代码如下:
一、增加模块 1.增加一个模块,命名为“我的模块” ThisWorkbook.VBProject.VBComponents.Add(vbext_ct_StdModule).Name = "我的模块" 系统常量vbext_ct_StdModule=1 2.增加一个类模块,命名为“我的类” ThisWorkbook.VBProject.VBComponents.Add(vbext_ct_ClassModule).Name = "我的类" vbext_ct_ClassModule=2 3.增加一个窗体,命名为“我的窗体” ThisWorkbook.VBProject.VBComponents.Add(vbext_ct_MSForm).Name = "我的窗体" vbext_ct_MSForm=3 二、删除模块 1.删除“模块1” ThisWorkbook.VBProject.VBComponents.Remove hisWorkbook.VBProject.VBComponents("模块1") 2.删除窗体“UserForm1” ThisWorkbook.VBProject.VBComponents.Remove ThisWorkbook.VBProject.VBComponents("UserForm1") 3.删除类模块“类1” ThisWorkbook.VBProject.VBComponents.Remove ThisWorkbook.VBProject.VBComponents("类1") 4.删除所有的窗体 Sub RmvForms() Dim vbCmp As VBComponent For Each vbCmp In ThisWorkbook.VBProject.VBComponents If vbCmp.Type = vbext_ct_MSForm Then ThisWorkbook.VBProject.VBComponents.Remove vbCmp Next vbCmp End Sub 相关: 工作表和ThisWorkbook的模块类型为vbext_ct_Document=100 三、增加代码 1.在“模块1”中插入代码 如果需要在“Sheet1”、“Thisworkbook”、或“Userform1”中操作,用只需将下面的“模块1”换成相应的名称即可。 方法1: 在模块的开始增加代码,增加的代码放在公共声明option,全局变量等后面。 Sub AddCode1() ThisWorkbook.VBProject.VBComponents("模块1").CodeModule.AddFromString _ "sub aTest()" & Chr(10) & _ "msgbox ""Hello""" & Chr(10) & _ "end sub" End Sub
VB常用字符串操作函数2009/11/25 18:321. ASC(X,Chr(X:转换字符字符码[格式]: P=Asc(X 返回字符串X的第一个字符的字符码 P=Chr(X 返回字符码等于X的字符 [范例]:(1P=Chr(65 ‘ 输出字符A,因为A的ASCII码等于65 (2P=Asc(“A” ‘ 输出65 2. Len(X:计算字符串X的长度 [格式]: P=Len(X [说明]:空字符串长度为0,空格符也算一个字符,一个中文字虽然占用2 Bytes,但也算 一个字符。 [范例]: (1 令X=”” (空字符串 Len(X 输出结果为0 (2 令X=”abcd” Len(X 输出结果为4 (3 令X=”VB教程” Len(X 输出结果为4 3. Mid(X函数:读取字符串X中间的字符 [格式]: P=Mid(X,n 由X的第n个字符读起,读取后面的所有字符。 P=Mid(X,n,m 由X的第n个字符读起,读取后面的m个字符。 [范例]: (1 X=”abcdefg” P=Mid(X,5 结果为:P=”efg” (2 X=”abcdefg” P=Mid(X,2,4 结果为 P=”bcde” 4. R eplace: 将字符串中的某些特定字符串替换为其他字符串 [格式]: P=Replace(X,S,R [说明]:将字符串X中的字符串S替换为字符串R,然后返回。[范例]:X=”VB is very good” P=Replace(X,good,nice 输出结果为:P=”VB is very nice” 5. StrReverse:反转字符串 [格式]: P=StrReverse(X [说明]:返回X参数反转后的字符串 [范例]:(1)X=”abc” P=StrReverse(X 输出结果:P=”cba” 6. Ucase(X,Lcase(X:转换英文字母的大小写 [格式]:P=Lcase(X ‘ 将X字符串中的大写字母转换成小写P=Ucase(X ‘ 将X字符串中的小写字母转换成大写 [说明]:除了英文字母外,其他字符或中文字都不会受到影响。 [范例]:(1)令X=”VB and VC” 则Lcase(X的结果为”vb and vc”,Ucase(X的结果为”VB AND VC” 7. InStr函数:寻找字符串 [格式]: P=InStr(X,Y 从X第一个字符起找出Y出现的位置 P=InStr(n,X,Y 从X第n个字符起找出Y出现的位置 [说明]:(1)若在X中找到Y,则返回值是Y第一个字符出现在X中的位置。(2) InStr(X,Y相当于 InStr(1,X,Y。(3)若字符串长度,或X为空字符串,或在X中找不到Y,则都 返回0。(4)若Y为空字符串,则返回0。 ---------------------------------------------------------------------------------------------- mid(字符串,从第几个开始,长度 ByRef 在[字符串]中[从第几个开始]取出[长度个字符串] 例如 mid("小欣无敌",1,3 则返回 "小欣无" instr(从第几个开始,字符串1,字符串2 ByVal 从规定的位置开始查找,返回字符
vb课后习题答案 第一章习题参考答案 一、填空题 1、对象事件驱动 2、编译运行模式解释运行模式 二、简答题 1、简述VB的特点。 答:①可视化的程序设计方法 ②面向对象的程序设计思想 ③事件驱动的编程机制 ④结构化的程序设计语言 ⑤高度的可扩充性 ⑥强大的数据库访问能力 ⑦支持动态数据交换 ⑧支持对象链接与嵌入 2、简述VB的安装过程。 答:①向光驱中放入VB安装光盘; ②计算机将运行自动安装程序,若没有,执行VB目录下的Setup.exe; ③根据提示逐一回答问题,并点击“下一步”; ④点击“完成”; 2、如何启动VB。 答:三种方法: ①单击“开始”按钮,选择“程序”菜单下的“Microsoft Visual Basic 6.0 中文版”菜单项并单击; ②双击桌面上的VB6.0快捷图标; ③在“开始”菜单的运行对话框中输入命令来启动VB; 第二章习题参考答案 一、选择题: 1-10、DCACD BCBBC 11-20、BADCA BBABA 21-27、ACBBD DC 二、填空题 1.窗体、控件 2.属性值 3.属性窗口设置、代码窗口设置 4.事件过程 5.对象名、下划线、事件名 6.Form_Click 第三章习题参考答案 一、选择题
1、B 2、C 3、A 4、B 5、A 6、C 7、C 二、填空题 1、11 字符型、字节型、整型、长整型、单精度型、双精度型、货币型、逻辑型、日期型、对象型、变体型。String、Byte、Integer、Long、Single、Double、Currency、Boolean 、Date、Object、Variant 2, 双引号(英文)、# 3、ASCII、1、2 4、public、通用、Dim、Static、Private、Static 5、&、+、+ 6、Now()、Time、日期型 三、解答题 1、(3) 2、(1 ) 3、(1)常量(关键字)(2)字符型常量(3)逻辑型常量(4)变量(5)字符串常量(6)变量 (7)字符串常量(8)变量(9)日期型常量(题目应是#11/16/1999#)(10)数值型常量(单精度) 4、31 5、(1)(1+y/x)/(1-y/x) (2)x^3+3*x*y/(2-y) (3)sqr(abs(a*b-c^3)) (4)sqr(s*(s-a)*(s-b)*(s-c)) 6、 7、(1)13 (2)17 (3)#1999-11-12# (4)zxy123ABC 8、(1)19 (2)8.16666666666667 (3)5.25 (4)2 9、(1)-4 (2)2 . 82842712474619 (3)-3 (4)49 (5)“-459.65”(6)”hello” (7)He 8)16 (9)5 10、(4) 11、(2) 12、(4) 第四章习题参考答案 一、选择题: 1—7: DAABBCD 二、填空题 1.500.00% 2.将字号扩大为原来的二倍 3.B 三、编程题(略) 1.文本框、标签和命令按钮的名称分别为text1、label1、command1 Private Sub Command1_Click() Label1.caption=text1.text Command1.caption=text1.text End Sub
基本操作题,请根据以下各小题的要求设计Visual Basic应用程序(包括界面和代码) 1、(1)在名为Form1的窗体上绘制两个标签(名称分别为Label1和Label2,标题分别为“长”和“宽”)、两个文本框(名称分别为Text1和Text2,Text属性均为空白)和一个命令按钮(名称为Command1,标题为“输入”)。编写命令按钮的Click事件过程,使程序运行后,若单击命令按钮,则先后显示两个“输入”对话框,在两个“输入”对话框中分别输入长和宽,并分别在两个文本框中显示出来,运行后的窗体如图21-1所示。 注意:程序中不得使用任何变量;文件必须存放在考生文件夹中,工程文件名为sj1.vbp,窗体文件名为sj1.frm。 (2)在名为Form1的窗体上绘制一个标签(名称为Label1,标题为“输入”)、一个文本框(名称为Text1,Text属性为空白)和一个命令按钮(名称为Command1,标题为“显示”)。请编写命令按钮的Click事件过程,使程序运行后,在文本框中输入内容,然后单击命令按钮,则标签和文本框消失,并在窗体上显示文本框中的内容。运行后的窗体如图21-2和图21-3所示。 注意:要求程序中不得使用任何变量;文件必须存放在考生文件夹中,工程文件名为Sj2.vbp,窗体文件名为sj2.frm。 2、(1)在窗体上添加通用对话框控件并编写适当的程序代码,要求程序运行时,双击窗口,可以弹出“颜色”对话框。程序运行时的窗体界面如图62-1所示。 注意:保存时必须存放在考生文件夹下,窗体文件名为sj1.frm,工程文件名为sj2.vbp。 (2)在窗体上绘制出3个文本框,名称分别为Text1、Text2和Text3。要求程序运行时,焦点
VB最简单入门教程
目录 (提示:按ctrl,并单击鼠标,可以跳到相应页) 1.1 1 我们需要什么 (3) 1.2 2 第二章:事件、属性及数据类型 (3) 1.3 3 第三章:VB语言 (6) 1.4 4-1第四章按钮(一) (12) 1.5 4- 第四章按钮(二) (199) 1.6 5 第五章菜单 (27) 1.7 6-1第六章输入(一) (34) 1.8 6-2第六章输入(二) (42) 1.9 6-3第六章输入(三) (52) 1.10 7第七章输出 (59) 附录 (63) 2.1 VB教程 (63)
1.1 1 我们需要什么 我们需要什么?当我们在一个精彩的游戏世界中游历了一番之后,或是惊叹于某一工具软件的小巧精致之余,多少总会产生些许编程的冲动。编程吗,在以前如果你对电脑还是一个门外汉,那实在是一件可望而不可及的事情。如果运用基于DOS下的编程语言,譬如C、Qbasic、Pascal等等,真不知何年何月才能有所成就。 编程是需要天赋的,你必须在大脑中对整个程序有一个清晰的轮廓,一个高效的流程,这并不是每个人都能做到的,你必须思之慎之,这也使编程变成一件最枯燥无味的事情。但在第四代计算机语言(可视化编程)出现后,可以确切的说它开发了人们的更多天赋,并不局限于那些头脑异常清晰的人,每一个人都可以发现自己也可以编出一些从前不敢问津的程序,想象力的充分发挥才是第四代语言的精粹。 Visual Basic(以下简称VB)可以说是可视化语言的先驱了,而且它也是可视化程度最高的一个,从几年前VB诞生之日起到现在,它已经经历了五个版本,而且现在微软正在紧张的进行着VB6.0的研制、测试,这么高的更新率,不外乎说明两个问题:用户对VB的热衷,微软对VB的重视。不可否认微软对市场的预测能力是极为高明的,而它强大的技术、财力支持也使它在许多以前未进入的领域,在不长的时间内有成为最有力的竞争对手,如IE之于浏览器领域,《帝国时代》之于游戏都是最好的例证。对于VB现在也有一个很强的竞争对手――Delphi,有人把它称作VB杀手,这显然有偏激之处,VB的确有它的不足之处,但Delphi 又何尝不是呢,而且以微软对VB的倾心,VB的功能必然会越来越强大。 VB的诞生 VB的出现可以说是Microsoft Windows的日渐成熟的必然产物。Microsoft Windows为程序员和最终用户提供了一个共同的人机界面。对用户,Windows提供了一个图形鼠标的操作环境,该环境对所有的应用程序都一样;对于程序员,Windows提供了一组预定义工具----称之为Microsoft Windows 的软件开发工具箱(SDK),该工具能使程序员建立一个与Windows界面相同的应用程序,而且,程序员不必关心最终用户的硬件配置情况。在这一开发环境中,程序员唯一困难的是Microsoft SDK提供了六百多个函数和与其一致的事件驱动(event-driven)编程技术。两种新方法的交叉使众多的程序员重新陷入困境,程序员不仅要掌握程序驱动编程技术和六百多个函数的功能,而且还得用C语言描述这些问题。因此一般情况下,程序员首先要掌握C程序设计技术,而后再开始学习SDK。这样的条件下就要求在Microsoft多任务环境下出现一种操作方便,使用简单的新工具----Visual Basic由此诞生。 何为可视 英文Visual的意思是“视觉的”,“可视的Baisc”这个名字可能抽象了点,但实际上它却是最直观的编程方法,之所以叫做“可视”,你只要看到VB的界面就会明白,实际上你无需编程,就可以完成许多步骤。在VB中引入了控件的概念,在Windows中控件的身影无处不在,各种各样的按钮、文本框、无线钮,都是控件的种类,VB把这些控件模式化,并且每个控件都有若干属性用来控制控件的外观,工作方法。这样你就可以象在画板上一样,随意点几下鼠标,一个按钮就完成了,这些在以前的编程语言下是要经过相当复杂的工作的。
《VB 程序设计》课后习题答案 第一章 习题参考答案 一、 填空题 1、对象 事件驱动 2、编译运行模式 解释运行模式 第二章 习题参考答案 一、选择题: 1-10、 DCACD BCBBC 11-20、BADCA BBAAB 21-29、AACBB CDDC 二、填空题 1. 窗体、控件 2. 属性值 3. 属性窗口设置、代码窗口设置 4. 事件过程 5. 对象名、下划线、事件名 6. Form_Click 第三章 习题参考答案 一、选择题 1、B 2、C 3、A 4、B 5、A 6、C 7、C 二、填空题 1、 11 字符型、字节型、整型、长整型、单精度型、双精度型、货币型、逻辑型、日期型、对象型、变体型。String 、Byte 、Integer 、Long 、Single 、Double 、Currency 、Boolean 、Date 、Object 、V ariant 2、 双引号(英文)、# 3、 ASCII 、1、2 4、 public 、通用、Dim 、Static 、Private 、Static 5、 &、+、+ 6、 Now()、Time 、日期型 三、解答题 1、(3) 2、(1 ) 3、(1)常量(关键字) (2)字符型常量 (3)逻辑型常量 (4)变量 (5)字符串常量 (6)变量 (7)字符串常量 (8)变量 (9)日期型常量 (题目应是#11/16/1999#) (10)数值型常量(单精度) 4、31 5、(1)(1+y/x)/(1-y/x) (2)x^3+3*x*y/(2-y) (3)sqr(abs(a*b-c^3)) (4)sqr(s*(s-a)*(s-b)*(s-c)) 6、 f e d c b a ++
1.1 VB的数据类型 数据类型是数据的表示和存储形式。VB定义的基本数据类型如表5-1所示。 表5-1 VB的基本数据类型 Integer(整型)、Long(长整型)、Single(单精度浮点型)、Double(双精度长整型)及Currency(货币型)均为Numeric数据类型。其中整型是16位的整数,长整型是32位的整数。单精度及双精度浮点型就表示实数,常被用于数量较大的数字。Currency数据类型支持小数点右面15位,是定点数据类型,适用于货币计算。 String(字符串变量)的数据类型只存放文本,是一个字符序列,它的每一个字符用ASCII 编码表示。不包含任何字符的串称为空串。 Byte数据类型表示0到255之间的数,常用于访问二进制文件、图形和声音文件
等。当需要把数据存放成字节,必须访问各字节时可采用Byte类型。 取值仅为True/False的类型称为Boolean(布尔)型,缺省值为False。 Date数据类型用于以特殊方式存放日期和时间。 Object变量可引用应用程序中或某些其他应用程序中的对象。 VB缺省规定,如果在生命中没有说明数据类型,则变量的数据类型为Variant(变体)。Variant数据类型还包含三种特定值:Empty、Null、Error。Empty值用于确定是否已将一个值赋予所创建的变量。赋值之前,Variant变量具有值Empty。 Null常用于数据库应用程序,表示未知或丢失为空的数据。 Error值是指已发出的过程中的错误状态。 Variant数据类型是最为灵活的数据类型,可以依据不同的需要进行各种数据类型的转换。它实际上包含两部分信息,一部分是数据类型的信息,一部分是表示数据值的信息。但正是由于它的灵活性,又使得它存在着一个明显的缺点,Variant数据类型比其他类型的数据占有更多的内存空间。 2 数组 VB中数组的定义类似于变量定义,所不同的是数组需要指定数组中的元素个数,例如:Dim Array(9)As Integer 数组中包含10个元素,脚标从0到9。 也可以指定脚标的起始值,例如: Dim IntegerArray(2 to 10)As Integer 这个数组含有九个元素,脚标从2到10。 还可以定义多维数组: Dim ThreeD(4,2 to 5,3 to 6)As Integer
第二章 一、问答题 1.叙述建立一个完整的应用程序的过程。 答:界面设计编写事件过程代码运行、调试保存文件 2.当建立好一个简单的应用程序后,假定该工程仅有一个窗体模块。问该工程涉及到几个文件要保存?若要保存该工程中的所有文件,正确的操作应先保存什么文件?再保存什么文件?若不这样做,系统会出现什么信息? 答:涉及到两个文件要保存。先保存窗体文件(.frm),再保存工程文件(.vbp)。若先保存工程文件,系统也会先弹出“文件另存为”对话框,要求把窗体文件先保存。 3.假定在W indows环境中,要保存工程文件时,若不改变目录名,则系统默认的目录是什么? 答:VB98 4.当标签框的大小由Caption属性的值进行扩展和缩小,应对该控件的什么属性进行何种设置? 答:将标签的Autosize设置为True. 5.VB6.0提供的大量图形文件在哪个目录下?若你的计算机上没有安装,则怎样安装这些图形文件? 答:VB6.0提供的图形文件在Graphics目录。 6.在VB6.0中,命令按钮的显示形式可以有标准和图形两种选择,这通过什么属性来设置?若选择图形的,则通过什么属性来装入图形?若已在规定的属性里装入了某个图形文件,但该命令按钮还是不能显示该图形,而显示的是Caption属性设置的文字,怎样改正?答:按钮Style的属性设置为Graphical(或1)。通过Picture属性来装入图形。不能显示图形是因为Style的属性设置为Standard(或0),只要改为Graphical(或1),一般还将Caption 属性的值设置为空。 7.标签和文本框的区别是什么? 答:文本是否可编辑。 8.当窗体上有三个文本框和一个命令按钮,若程序运行时,需把焦点定位在第三个文本框处,应对何控件的什么属性进行何种设置? 答:应对Text3控件进行Text3.TabIndex=0的设置。 9.简述文本框的change与keypress事件的区别。 答:文本框内容变化,change与keypress事件都会发生,所不同的是Keyprees还将返回一个Keyasii参数 10.当某文本框输入数据后(按了回车键),进行判断认为数据输入错,怎样删除原来数据?怎样使焦点回到该文本框重新输入? 答:假定文本框的名称为Text1,则事件过程如下: Private Sub Text1_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then If 出错条件判断成立Then Text1=””…先删除原来数据 Text1.SetFocus …焦点回到Text1 End If …… End If End Sub
第一章:基本操作题 ⑴在名称为Form1的窗体上画一个名称为Text1的文本框,请设置适当属性,使文本框中无初始内容,可显示多行,有垂直滚动条,且最多只能输入1000个字符。如图所示。 注意:存盘时必须存放在考生文件夹下,工程文件名为sjt11.vbp,窗体文件名为sjt11.frm。 ⑵在名称为Form1的窗体上画两个文本框,其名称分别为Text1和Text2,内容分别为“文本框1”和“文本框2”,编写适当的事件过程。程序运行后,如果单击窗体,则Text1隐藏,Text2显示,如图1所示;如果双击窗体,则Text1显示,Text2隐藏,如图2所示。 注意:程序中不得使用变量。 存盘时必须存放在考生文件夹下,工程文件名为sjt12.vbp,窗体文件名为sjt12.frm。 ⑶在名称为Form1的窗体上画一个标签,其名称为Label1,标题为“程序设计”,BorderStyle属性为1,且可以根据标题自动调整大小,编写适当的事件过程。程序运行后,其界面如图1所示,此时如果单击窗体,则标签消失,同时用标签的标题作为窗体的标题,如图2所示。 注意:存盘时必须存放在考生文件夹下,工程文件名为sjt13.vbp,窗体文件名为sjt13.frm。 (4)在名称为Form1的窗体上画一个命令按钮,其名称为C1,标题为“移动”,位于窗体的左上部,如图1所示,编写适当的事件过程。程序运行后,每单击一次窗体,都使得命令按钮同时向右、向下移动100. 注意:存盘时必须存放在考生文件夹下,工程文件名为sjt14.vbp,窗体文件名为sjt14.frm。 (5)在窗体上画二个文本框,名称分别为Text1、Text2。请设置适当的控件属性,并编写适当的事件过程,使得在运行时,如果在Text1中每输入一个字符,则显示一个“*”,同时在Text2中显示输入的内容(如图2所示)。程序中不得使用任何变量。 注意:存盘时必须存放在考生文件夹下,工程文件名为sjt15.vbp,窗体文件名为sjt15.frm。 (6)在名称为Form1的窗体上画二个文本框,名称分别为T1、T2,初始情况下都没有内容。请编写适当的事件过程,使得在运行时,在T1中输入的任何字符,立即显示在T2中(如图所示)。程序中不得使用任何变量。 注意:存盘时必须存放在考生文件夹下,工程文件名为sjt16.vbp,窗体文件名为sjt16.frm。
VB试题 一、基本概念及基本操作 1、如果要向工具箱中加入控件和部件,可以利用"工程"菜单中的______命令。 A、引用 B、部件 C、工程属性 D、添加窗体 2、VB一共有设计、运行和中断三种模式,要使用调试工具应该______。 A、进入设计模式 B、进入运行模式 C、进入中断模式 D、不用进入任何模式 3、系统符号常量的定义可以通过______获得。 A、对象浏览器 B、代码窗口 C、属性窗口 D、工具箱 4、在设计阶段,当双击窗体上的某个控件时,所打开的窗口是______。 A、工程资源管理器窗口 B、工具箱窗口 C、代码窗口 D、属性窗口 5、以下叙述中错误的是______。 A、用Shell函数可以调用能够在Windows下运行的程序
B、用Shell函数可以调用可执行文件,也可调用Visual Basic 的内部函数 C、调用Shell函数的格式应为:<变量名>=Shell(......) D、用Shell函数不能执行DOS命令 6、以下叙述中错误的是______。 A、在工程资源管理器窗口中只能包含一个工程文件及属于该工程的其他文件 B、以.BAS为扩展名的文件是标准模块文件 C、窗体文件包含该窗体及其控件的属性 D、一个工程中可以含有多个标准模块文件 以下不属于Visual Basic系统的文件类型是______。 A、.frm B、.bat C、.vbg D、.vbp 7、VB中窗体文件的扩展名是______。 A、VBP B、FRM C、VBW D、PDM 8、以下叙述中错误的是______。 A、打开一个工程文件时,系统自动装入与该工程有关的窗体、标准模块等文件 B、保存Visual Basic程序时,应分别保存窗体文件及工程文件 C、Visual Basic应用程序只能以解释方式执行 D、事件可以由用户引发,也可以由系统引发 9、以下叙述中错误的是______。 A、一个工程可以包括多种类型的文件
《VB程序设计》课程练习题 上表中的题号所对应题目的题干: 1、叙述Visual Basic的特点。 2、当窗体上有三个文本框和一个命令按钮,若程序运行时,焦点定位在第三个文本框(Text3)处,应对何控件的什么属性进行何种设置? 3、若要对窗体上的三个文本框输入数据,个控件焦点的移动可通过Tab键(系统本身具有的),也可通过回车键,则要对文本框的什么事件编程? 4、当某文本框输入数据后(按了回车键),进行判断认为数据输入错,怎样删除原来数据?怎样使焦点回到文本框重新输入? 5、怎样把关于Command命令按钮的Enabled属性的帮助示例代码复制到你的代码窗口?已知帮助中的代码如下: Private Sub Form_Load() Text1.Text = ””…消除文本框的内容 Command1.Caption = “Save”…在按钮上放置标题 End Sub Private Sub Text1_Change() If Text1.Text = “” Then …查看文本框是否为空 Command1.Enabled = False …使按钮无效 Else Command1.Enabled = True …使按钮有效 End If End Sub 6、当运行程序前,对某些控件设置属性值,除了在窗体中直接设置外,还可以通过代码设置,这些代码一般放在什么事件中?例如,程序要将命令按钮定位在窗体的中央,请写出事件过程。 7、在KeyPress事件中,如何取消用户刚键入的字符?
8、静态数组与动态数组的区别是什么?在声明静态数组、重定义动态数组时的下标都可以用变量来表示吗? 9、函数过程和子过程的区别是什么? 10、子过程调用有哪两种形式? 11、什么是形参?什么是实参?什么是值引用?什么地址引用?地址引用时,对应的实参有没有限制? 12、如果要时钟控件每半分钟发生一个Timer事件,则Interval属性应设置为多少? 13、如果在KeyDown事件过程中将KeyCode设置为0,KeyPress的KeyAscii参数会不会受影响?如果输入的对象是文本框,那文本框的内容是否有影响? 14、构造满足下列条件的Open语句。 (1)建立一个新的顺序文件SEQNEW.DA T,供用户写入数据,指定文件号为1。 (2)打开一个老的顺序文件SEQOLD.DA T,用户将从该文件读出数据,指定文件号为2。(3)打开一个老的顺序文件SEQAPPEND.DA T,用户将在该文件后面添加数据,文件号通过调用FreeFile函数获得。 15、请写出程序代码片段,将磁盘上的两个文件合并。(提示:把它们作为二进制文件打开) 16、PictureBox控件和Image控件有什么区别? 17、Visual Basic可处理哪些格式的图形文件? 18、在程序运行时怎样在图形(像)框中装入或删除图形? 19、简述Printer对象与Printers集合对象的区别。 20、当要在ToolBar控件中添加一个按钮,如何实现? 21、当要修改ToolBar控件某按钮的图像,如何实现? 22、Visual Basic中记录集有几种类型?有何区别?
第四章 VB程序设计基础 第一节数据类型 一.基本数据类型 1.字符串(string) 1)在VB中,字符串是放在双引号内的若干个字符,其中长度为0(即不含任何字符)的字符串称为空串 2) VB中字符串分别变长字符串和定长字符串。其中变长字符串的长度是不确定的,而定长字符串含有确定个数的字符,最大长度不超过65535个字符 2. 数值 VB的数值型数据分为整型数和浮点数两类。期中整型数又分为长数型和整数,浮点数分为单精度浮点数和双精度浮点数 1)整型数 (1)整数(integer):两个字节、取值范围:-32768——32767 (2)长整数(long):四个字节 2)浮点数 (1)单精度(single):四个字接、用“E”表示 例:123.45E3 123.45*10*10*10 (2)双精度(double):八个字节,用“D”表示 例:123.45678D3 123.45678*10*10*10 3.货币(currency) 1)货币数据类型是为表示钱款而设置的,该数据类型一8个字节存储,精确到小数点后4位,在小数点后4位以后的数字将会被舍去 2)浮点数中的小数点是“浮动”的,即小数点可以出现在数的任何位置,而货币类型数据的小数点是固定的,因此称为定点数据类型 4. 变体(variant) 变体数据类型是一种可变数据类型,可以表示任何值,包括数值、字符串、日期/时间等 5.其他数据类型 1)字节(byte) 字节实际上是一种数值类型,以1字节的无符号二进制数存储,其取值范围是0——255 2)布尔(bollean) 布尔型数据是一个逻辑值,用两个字节存储,它只取两种值,即Ture(真)或Flase (假) 3)日期(date) 日期存储为8个字节浮点值形式,日期文字以符号“#”括起来 二.用户定义的数据类型 1.用户可以利用Type语句定义自己的数据类型,其格式如下: Type 数据类型名称 数据类型元素名 As 类型名 数据类型元素名 As 类型名 …… End Type
请注意,下列所有的提示代码中,各事件过程的第1行(Private Sub…)和最后一行(End Sub)无需自己输入,在代码编辑窗口中对象列表选择相应对象,过程列表选择相应事件过程名,系统会自动输入第一行和最后一行,然后对号入座填入相应代码。
目录 第2章实例代码(理论课) (3) 【实例2.1】编写窗体的3个事件过程 (3) 【实例2.2】窗体关闭事件应用 (3) 【实例2.3】窗体FormClosing事件应用 (4) 【实例2.4】键盘事件的应用 (4) 【实例2.5】鼠标事件的应用 (5) 【实例2.6】多窗体程序设计 (6) 【实例2.7】命令按钮DialogResult属性应用 (7) 【实例2.8】密码框的使用 (8) 【实例2.9】文本框各类事件的应用 (8) 【实例2.10】文本框属性及方法的应用 (9) 第2章实验代码(上机内容) (10) 1.创建Windows应用程序,完成为窗体改变背景色的功能 (10) 2.体会窗体属性的使用 (11) 3.体会颜色的设置方法 (13) 4.自己设计应用程序,熟悉已介绍的各种窗体属性及Load、Click和DoubleClick事件 (13) 5.改写【实例2.3】的窗体关闭处理方法 (13) 6.完成【实例2.4】,体会键盘事件的使用 (13) 7.设计应用程序,要求窗体中文本框只按收字母和回车键 (13) 8.完成【实例2.6】,体会多窗体程序设计 (14) 9.完成【实例2.7】,命令按钮DialogResult属性应用 (14) 10.深入体会窗体、标签及命令按钮的属性、方法和事件的应用 (14) 11.完成【实例2.8】,体会密码框的制作与使用 (14) 12.完成【实例2.9】,体会文本框各类事件的使用 (14) 13.设计应用程序用光标键控制猴子移动 (14) 14.完成【实例2.10】,体会文本框各种方法的使用 (14) 15.使用FontDialog和ColorDialog对话框改写【实例2.10】某些功能的实现方法 (14) 16.求三角形函数值 (15) 17.总结本章所学知识点 (17)
Visual Basic入门教程 第一章介绍 我们需要什么?当我们在一个精彩的游戏世界中游历了一番之后,或是惊叹于某一工具软件的小巧精致之余,多少总会产生些许编程的冲动。编程吗,在以前如果你对电脑还是一个门外汉,那实在是一件可望而不可及的事情。如果运用基于DOS 下的编程语言,譬如C、Qbasic、Pascal等等,真不知何年何月才能有所成就。 编程是需要天赋的,你必须在大脑中对整个程序有一个清晰的轮廓,一个高效的流程,这并不是每个人都能做到的,你必须思之慎之,这也使编程变成一件最枯燥无味的事情。但在第四代计算机语言(可视化编程)出现后,可以确切的说它开发了人们的更多天赋,并不局限于那些头脑异常清晰的人,每一个人都可以发现自己也可以编出一些从前不敢问津的程序,想象力的充分发挥才是第四代语言的精粹。 VisualBasic(以下简称VB)可以说是可视化语言的先驱了,而且它也是可视化程度最高的一个,从几年前VB诞生之日起到现在,它已经经历了五个版本,而且现在微软正在紧张的进行着VB6.0的研制、测试,这么高的更新率,不外乎说明两个问题:用户对VB的热衷,微软对VB的重视。不可否认微软对市场的预测能力是极为高明的,而它强大的技术、财力支持也使它在许多以前未进入的领域,在不长的时间内有成为最有力的竞争对手,如IE之于浏览器领域,《帝国时代》之于游戏都是最好的例证。对于VB现在也有一个很强的竞争对手DDDelphi,有人把它称作VB杀手,这显然有偏激之处,VB的确有它的不足之处,但Delphi又何尝不是呢,而且以微软对VB的倾心,VB的功能必然会越来越强大。 VB的诞生 VB的出现可以说是MicrosoftWindows的日渐成熟的必然产物。MicrosoftWindows为程序员和最终用户提供了一个共同的人机界面。对用户,Windows提供了一个图形鼠标的操作环境,该环境对所有的应用程序都一样;对于程序员,Windows提供了一组预定义工具----称之为MicrosoftWindows的软件开发工具箱(SDK),该工具能使程序员建立一个与Windows界面相同的应用程序,而且,程序员不必关心最终用户的硬件配置情况。在这一开发环境中,程序员唯一困难的是MicrosoftSDK提供了六百多个函数和与其一致的事件驱动(event-driven)编程技术。两种新方法的交叉使众多的程序员重新陷入困境,程序员不仅要掌握程序驱动编程技术和六百多个函数的功能,而且还得用C语言描述这些问题。因此一般情况下,程序员首先要掌握C程序设计技术,而后再开始学习SDK。这样的条件下就要求在Microsoft多任务环境下出现一种操作方便,使用简单的新工具----VisualBasic由此诞生。 何为可视 英文Visual的意思是“视觉的”,“可视的Baisc”这个名字可能抽象了点,但实际上它却是最直观的编程方法,之所以叫做“可视”,你只要看到VB的界面就会明白,实际上你无需编程,就可以完成许多步骤。在VB中引入了控件的概念,在Windows中控件的身影无处不在,各种各样的按钮、文本框、无线钮,都是控件的种类,VB把这些控件模式化,并且每个控件都有若干属性用来控制控件的外观,工作方法。这样你就可以象在画板上一样,随意点几下鼠标,一个按钮就完成了,这些在以前的编程语言下是要经过相当复杂的工作的。 我的希望: 我在学习VB的过程中也曾遇到了许多困难,而且用的参考书大都来自译文,毕竟美国人和中国人的表达方式有所不同。这也造成了理解上的困难,所以我想为什么我不能写一个给中国人看到VB教程呢,于是我这么做了。也曾经在杂志上发表过几篇用VB制作小程序的文章,但受杂志的限制(篇幅、内容等等)(我得听小编的),总没有一个机会系统的介绍一下VB,造成了小小的遗憾。不过,我自己的主页建好后,终于这个愿望可以实现了,利用HTML可以方便的把文字与图片结合起来,不失为一个教学良所,也希望能够得到大家的支持。 希望“VB教程”能给你我一个互相学习的机会,如果你能从中获益那将是我最大的快乐,那时你一定会发现编程比游戏有趣得多 第二章:事件、属性及数据类型 以后两章可能会比较枯燥,但不可否认也很重要,所以为了学好VB,我们一定要打好基础才行。 一、事件 通过上一章的例子,你可能对“面向对象的编程”已经有了一定了解,它是由事件驱动的,对于不同的对象,所能感应到的事件也会不同,譬如说当你把鼠标移进某一区域时就会触发MouseMove事件,这很直观,也容易理解,但也有些事件比较抽象,下面我来对一般的事件进行一下解释。
《VB程序设计》第四章第四节参数的传递 最后修改: 2010-6-2 23:16:59 第四节参数的传递 参数是在本过程有效的局部变量,用于传递信息。在调用一个有参数的过程时,首先进行的是“形参和实参结合”,实现调用过程的实参与被调过程的形参之间的数据传递,数据传递有两种方式:按值传递和按地址传递。 例如,下面实例由于传递的参数个数不匹配而出错。 Private Function Divisor(ByVal x As String,ByVal y As Integer) ′ 函数Divisor计算最大公约数 … End Function Divisor有两个参数,而调用语句中形参个数只有一个,代码如下: Private Sub Form_Click() Dim m As Integer, n As Integer, E As Integer N=InputBox("请输入N" ) M=InputBox("请输入M" ) g=Divisor(n) ′未提供m参数 Print n;"和";m;"的最大公约数是:" ;g End Sub 单击窗体运行程序时,则会显示出错信息,如图4-4-1所示。 图 4-4-1 一、形参和实参 1.形参 在被调用过程中的形参,出现在Sub过程和Function过程中。在过程被调用之前,形参并未被分配内存,只是说明形参的类型和在过程中的作用。形参列表中的各参数之间用逗
号(,)分隔,形参可以是变量名和数组名,定长字符串变量除外。 2.实参 实参是在主调过程中的参数,在过程调用时实参将数据传递给形参。 形参列表和实参列表中的对应变量名可以不同,但实参和形参的个数、顺序以及数据类型必须相同。因为“形实结合”是按照位置结合,即第一个实参与第一个形参结合,第二个实参与第二个形参结合,依此类推。 例如,在求最大公约数的[例Ex_Divisor1] 中被调用函数和调用过程如下: Private Function Divisor(ByVal x As Integer,ByVal y As Integer) End Sub Private Sub Form_Click() G=Divisor(n,m) End Sub 当运行单击窗体事件调用Divisor过程时,首先进行“形实结合”。形参与实参的结合对应关系是:n→>x,m→y。 3.形参的数据类型 在创建过程时,如果没有声明形参的数据类型,则默认为Variant型。 例如,将[例Ex_Divisor1]函数过程中的x为Variant型,y为Integer型: Private Function Divisor(ByVal x,ByVal y As Integer) End Function 对于实参数据类型与形参定义的数据类型不一致时, VB会按要求对实参进行数据类型转换,然后将转换值传递给形参。 例如,将[例Ex_Divisor1]函数的实参n的数据类型改为Single型,被调函数如下: Private Sub Form_Click() Dim n As Single,m As Integer, g As Integer N=InputBox(″请输入N″ ) M=InputBox(″请输入M″ ) G=Divisor(n,m) Print n;″和″ ;m;″的最大公约数是:″ ;g End Sub 被调函数过程如下:
V B程序设计教程第四 版课后答案 集团标准化工作小组 [Q8QX9QT-X8QQB8Q8-NQ8QJ8-M8QMN]
vb课后习题答案 第一章习题参考答案 一、填空题 1、对象事件驱动 2、编译运行模式解释运行模式 二、简答题 1、简述VB的特点。 答:①可视化的程序设计方法 ②面向对象的程序设计思想 ③事件驱动的编程机制 ④结构化的程序设计语言 ⑤高度的可扩充性 ⑥强大的数据库访问能力 ⑦支持动态数据交换 ⑧支持对象链接与嵌入 2、简述VB的安装过程。
答:①向光驱中放入VB安装光盘; ②计算机将运行自动安装程序,若没有,执行VB目录下的; ③根据提示逐一回答问题,并点击“下一步”; ④点击“完成”; 2、如何启动VB。 答:三种方法: ①单击“开始”按钮,选择“程序”菜单下的“Microsoft Visual Basic 中文版”菜单项并单击; ②双击桌面上的快捷图标; ③在“开始”菜单的运行对话框中输入命令来启动VB; 第二章习题参考答案 一、选择题: 1-10、 DCACD BCBBC 11-20、BADCA BBAAB 21-29、AACBB CDDC
二、填空题 1.窗体、控件 2.属性值 3.属性窗口设置、代码窗口设置 4.事件过程 5.对象名、下划线、事件名 6. Form_Click 第三章习题参考答案 一、选择题 1、B 2、C 3、A 4、B 5、A 6、C 7、C 二、填空题 1、 11 字符型、字节型、整型、长整型、单精度型、双精度型、货币型、逻辑型、日期型、对象型、变体型。String、Byte、Integer、Long、Single、Double、Currency、Boolean