《vb教程第二章课件》由会员分享,可在线阅读,更多相关《vb教程第二章课件(36页珍藏版)》请在金锄头文库上搜索。
1、第二章,Visual Basic 程序设计教程,2,创建应用程序的步骤,Step1:建立工程 Step2:界面设计 Step3:编写源代码 Step4:调试运行,保存工程,生成执行文件,2.1 数据类型,什么是数据: 么,描述客观事物的数、字符以及所有能输入到计算机中并被计算机程序加工处理的符号的集合称为数据。,数据是计算机程序处理的对象,也是运算产生的结果。,2.1 数据类型,2.1 数据类型,1.数值型数据类型,VB有6种数值型的数据:字节型 (Byte)、整型(Integer)、长整型(Long)、单精度浮点型(Single)、双精度浮点型(Double)和货币型(Currency)。
2、前三种为整型数据,后3种为浮点型(实型)数据。,例:123.45、 123.45!、0.12345E+3、 12345E-2,双精度浮点数的表示形式: 尾数D 指数,例: 123.45#、0.12345D+3、12345D-2,2.1 数据类型,3.布尔型数据类型,2.字符型数据类型,字符型数据是用双引号括起来的若干个字符。字符型数据中的字符可以是计算机系统允许使用的任意字符。例如:Visual Basic 6.0、*计算机%和等都是合法的字符型数据。,布尔型数据只有两个值:真(True)和假(False),经常被用来表示逻辑判断的结果。任何只有两种状态的数据,如“True/False”、“Y
3、es/No”、“On/Off”等,都可以表示为布尔型。布尔型的默认值为False。,2.1 数据类型,4.日期型数据类型,日期型数据用来表示日期和时间,可以表示多种格式的日期和时间。日期型数据用两个“#”符号把表示日期和时间的值括起来。例如:#11/18/1999#,#1999-11-18#,#11/18/1999 10:28:56 pm#。如果输入的日期或时间是非法的或不存在的,系统将提示出错信息。,5.对象型数据类型,对象型数据可用来表示应用程序中或某些其他应用程序中的对象。,6.变体型数据类型,变体型数据能够表示所有系统定义类型的数据,当把它们赋予变体类型时,不必在这些数据的类型间进行转
4、换,VB会自动完成任何必要的转换。如果对变体型变量进行数学运算或函数运算,则变体型数据必包含某个数;如果两个含有字符串的变体变量进行连接时,只能用“&”操作符而不能用“+”操作符。,2.2 常量和变量,2.2.1 常量,常量是指在程序运行过程中始终保持不变的量。 VB语言中常量分为两种:直接常量和符号常量。,1.直接常量,2.1 数据类型,2.2.1 常量,2.符号常量,常量也可以用一个符号来表示,称为符号常量。 符号常量分为两大类,一类是系统内部定义的符号常量,这类常量用户可以随时使用;另一类是用户用 Const 语句定义的,这类常量必须先声明后才能使用。,定义符号常量的形式如下: Publ
5、ic/Private Const As类型 = 常量表达式 As子句是可选的,它用来说明常量的数据类型,如果省略,则数据类型由表达式决定。常量表达式是将被替代的常量,可以是数字、字符串或由它们与运算符组合成的简单表达式。 例如: Const pi As Double=3.14159265358979 Const Str=ABCDEF Const Str=(2+3)* 7 常量声明中不能使用函数。 例如: Const Num=Sin(30)语句是错误的。 一旦声明了常量,就不能在此后的语句中改变它的数值,这是个安全特性,也是声明常量的一个好处。,2.1 数据类型,2.2.2 变量,变量是指在程序
6、执行过程中其值可以变化的量。变量通过一个名字(变量名)来标识。,1.变量的命名规则,1)变量名必须以字母或汉字开头。例如:abc姓名、年n3和ff28等变量名都是合法的,而3abc.#xy和+uu等变量名是非法的。 2)不能在变量名中出现句号、空格或者嵌入!、#、$、%、&等字符。 例如:f#, d%等变量名是合法的,而r%R, a#bc和a be等变量名是非法的。 3)不能使用VB的关键字作为变量的名字。关键字是VB内部使用的词,是该语言的组成部分。例如,print, dim和for等都是非法变量名。 4)变量名不得超过255个字符。 5)变量名在变量的有效范围内必须是唯一的。 6)变量名不
7、区分大小写。 例如:变量ABC, Abc和aBc表示同一变量。,2.1 数据类型,2.2.2 变量,2.变量的声明,声明变量的一般形式如下: Dim|Private|Static|Public AS, As 说明: (1)Public语句用来声明公有的模块级变量,Private或Dim语句用来声明私有的模块变量,Dim或Private或Static语句来声明过程级局部变量 (2)遵循标准的变量命名约定。 (3)用来定义被声明的数据类型或对象类型。,例如: Dim Number As Integer Dim Count As Single Dim Name as String,也可写成: Dim
8、 Number% Dim Count! Dim Name$,还可以写成: Dim Number As Integer, Count As Single,Name As String,在默认情况下,字符串变量是不定长的,随着对字符串变量赋予新的数据,它的长度可增可减,也可以将字符串变量声明为定长的。 声明一个定长字符串变量的语法如下: Dim 变量名 As String*长度 例如,声明一个长度为50个字符的字符串变量,可用下列语句: Dim Name As Strring*50,2.3 运算符和表达式,算术运算符与算术表达式 字符运算符与字符表达式 关系运算符与关系表达式 逻辑运算符与逻辑表达
9、式,2.3 运算符和表达式,2.3.1 算术运算符与算术表达式,运算符的优先级表示当表达式中有多个操作符时,先执行哪个操作符。左面表中按优先顺序 由高到低列出了算术运算符。 其中取负运算符(一)只需一个操作数,称之为单目运算符。其他运算符都需要两个操作数,称之为双目运算符。 整除运算()的结果取其商。如果参加整除的操作数是浮点数,则先按四舍五入的原则将它们变成整数,然后再执行整除运算。 取余运算(Mod)是求两个整数相除后的余数。如果参加取余运算的操作数是浮点数,则先按四舍五入的原则将它们变成整数,然后再执行取余运算。,对于算术运算,如果操作数具有不同的数据精度,系统规定运算结果的数据类型以精
10、度高的数据类型为准。即: 整形长整型单精度型双精度型货币型,2.3 运算符和表达式,2.3.1 算术运算符与算术表达式,2.表达式的书写规则 算术表达式与数学中的表达式写法有所区别,在书写表达式时应当特别注意: (1)每个符号占1格,所有符号都必须一个一个并排写在同一横线上,不能在右上角或右下角写方次或下标。 例如:23要写成23,x1+x2要写成x1+x2。 (2)原来在数学表达式中省略的内容必须重新写上。 例如:2x要写成2*x。 (3)所有括号都用小括号(),括号必须配对。 例如:3x+2(y+x)必须写成3*(x+2*(y+x),2.3 运算符和表达式,2.3.2 字符串运算符与字符串
11、表达式,字符串运算符有两个:“&”和“+”,它们的作用是将两个字符串拼接起来。 例如: Visual Basic & 程序设计语言 结果为Visual Basic程序设计语言 电脑 + 爱好者 结果为电脑爱好者 Str$ = 计算机 Str & 与网络 结果为计算机与网络 注意: (1)变量名与“&”之间一定要加一个空格。因为“&”本身还是长整型的类型符,不加空格容易造成误会。 (2)“&”运算符会自动将非字符型的数据转换成字符串后再进行连接,例如: 1234&5678 & abcd 结果为12345678abcd 1234 & 5678 结果为12345678 (3)+运算符在连接字符串时不
12、能自动转换,例如下面语句在运行时将出现类型不匹配错误: 1234 + abcd 结果是弹出出错信息框。 1234 + 5678 结果是6912 而不是将数据进行连接。,2.3 运算符和表达式,2.3.3 关系运算符和关系表达式,关系运算符用来对两个操作数进行大小比较。关系运算的结果是一个逻辑量,True真)或False(假)。如果关系成立,则值为True,否则值为False。在VB中,参与关系运算的操作数可以是数值型、字符型或日期型,其结果为True时用-1表示,为False时用0表示。,2.3 运算符和表达式,2.3.4 逻辑运算符与逻辑表达式,逻辑运算符的作用是对操作数进行逻辑运算。操作数
13、可以是逻辑量(True或False)或关系表达式。逻辑运算的结果也是一个逻辑量。,日期表达式由算术运算符“+,-”、算术表达式、日期型常量、日期型变量和函数组成。日期型数据是一种特殊型的数值型数据,它们之间只能进行加减运算,有下面三种情况: (1) 两个日期型数据可以相减,结果是一个数值型数据(两个日期相差的天数)。 例如: Print #12/19/1999#-#11/16/1999# 输出结果为 33 (2) 一个表示天数的数值型数据可加到日期型数据中,其结果仍然为一日期型数据(向后推算日期)。 例如: Print #11/16/1999#+33 输出结果为 #12/19/1999# (3
14、) 一个表示天数的数值型数据可从日期型数据中减掉它,其结果仍然为一日期型数据(向前推算日期)。 例如: Print #12/19/1999#-33 输出结果为 #11/16/1999#,2.3 运算符和表达式,2.3.5 日期表达式,2.3 运算符和表达式,2.3.6 运算符的优先级别,在一个表达式中进行多个运算时,每一部分都会按预先确定的顺序进行计算求解,这个顺序被称为运算符优先级。 当表达式有多种运算符时,先处理算术运算符和字符串运算符,接着处理关系运算符,然后再处理逻辑运算符。即各种运算符的优先级如下: 算术选算符字符串运算符关系运算符逻辑运算符。 括号可改变优先级的顺序,强制优先处理表
15、达式的某部分。括号内的操作总是比括号外的操作先被执行。但是在括号内,仍保持正常的运算符优先级。 在书写表达式时,尽管有时候括号不是必须的,但最好还是在表达式适当的地方添加一些括号,使得表达式的层次更分明,以增加程序的可读性。,2.4 常用内部函数,Visual Basic语言提供了上百种内部函数供编程者使用。内部函数是已经定义好的,用户只需要掌握用内部函数的功能和调用方法。 VB的内部函数一般包括: 数学函数 随机函数 日期与时间函数 字符串函数 文件操作函数 窗体输入输出函数 类型转换函数 函数的一般调用格式为:函数名(参数列表) 说明: 参数列表是可选项,若没有参数,称为无参函数,但圆括号
16、一般不能省略,各参数之间用逗号隔开。 函数一般不能单独作为一个语句,要调用函数,一般使用时是将函数值的输出赋值给某个变量。函数调用时要注意参数值及数据类型、函数值及数据类型。,2.4 常用内部函数,2.4.1 数学函数,2.4 常用内部函数,2.4.1 随机函数,【格式】Rnd(n) 【功能】在区间(0,1)内随机产生一个浮点数。 【说明】n为数值类型的参数,函数返回值为数值型数据。要先使用语句Randomize(timer)初始化随机数发生器,当n0时,每次产生的随机数都不同;当n=0时,每次产生的随机数都与上次的相同;当n0时,每次产生的随机数都相同。 注意:在VB中,如果反复运行同一段程序,想要使产生的每组随机数序列都不相同,那么必须要改变“随机数生成器”的初始值。可以使用Randomize语句,它会以系统的时间作为初始化“随机数生成器”的随机数,这样,每次运行后的结果就不再相同。 例2