中国矿业大学计算机学院1第3章VB语言基础3.1VB程序的书写规则3.2VB数据类型3.3变量与常量3.4运算符和表达式3.5VB常用内部函数本章小结中国矿业大学计算机学院计算机基础部23.1VB程序的书写规则1.VB代码不区分字母的大小写(1)系统保留字(关键字)自动转换每个单词的首字母大写。(2)用户自定义的变量、过程名以第一次定义为准。中国矿业大学计算机学院计算机基础部32.语句书写自由(1)一行可书写多条语句,之间用冒号“:”分隔;例:a=4:B=A+2(2)一个长语句可分若干行书写,用续行符连接,续行符是一个“空格”+“下划线符”组成;(3)一行=255个字符。3.1VB程序的书写规则中国矿业大学计算机学院计算机基础部43.注释有利于程序的维护和调试给程序加适当的注释是一个良好的编程习惯什么地方加注释?(1)声明一个重要变量(2)对过程定义说明(3)对整个程序的说明使用单引号(’)引导注释以Rem开头定义注释块3.1VB程序的书写规则中国矿业大学计算机学院计算机基础部5数据类型是程序设计中的重要概念。是对某类数据的基础特性的抽象描述。包括:该类数据的值的表示;对该值的操作。VB中数据类型:标准数据类型(11种)自定义类型3.2VB数据类型中国矿业大学计算机学院计算机基础部63.2VB数据类型标准数据类型自定义数据类型数值数据类型字符数据类型日期数据类型逻辑数据类型对象数据类型变体数据类型中国矿业大学计算机学院计算机基础部71.数值数据类型3.2VB数据类型中国矿业大学计算机学院计算机基础部8(1)整型(Integer)包括正整数、负整数和零范围:-32768——+32767例:DimaAsIntegera=50(2)长整型(Long)表示的整数范围比整型更大例:DimaAsLonga=4800513.2VB数据类型中国矿业大学计算机学院计算机基础部9(3)单精度型(Single)用来表示带有小数部分的实数.可表示最多7位有效数字的数,否则,将四舍五入.科学计数法格式:aE±c=a×10例:5.453E+4=5.453×10-3.785E-2=-3.785×10±c4-23.2VB数据类型中国矿业大学计算机学院计算机基础部10(4)双精度型(Double)与单精度类似,可表示最多15位有效数字的数科学计数法格式:aD±c=a×10±C3.2VB数据类型中国矿业大学计算机学院计算机基础部11(5)货币型(Currency)用于货币计算或精度要求高的计算定点实数,其保留小数点右边4位和左边15位。例:DimaaAsCurrencyaa=3.1242注:所有数值型变量之间均可相互赋值3.2VB数据类型中国矿业大学计算机学院计算机基础部12看程序写结果PrivateSubForm_click()DimxAsDoubleDimaAsLong,bAsSingle,cAsBooleanDimdAsString,eAsDate,fAsCurrencyx=1111115.6767545a=x:b=x:d=x:c=x:e=x:f=xPrintx为双精度:;xPrinta为长整型:;aPrintb为单精度:;bPrintc为布尔型:;cPrintd为字符串:;dPrinte为日期型:;ePrintf为货币型:;fEndSub3.2VB数据类型中国矿业大学计算机学院计算机基础部132.字符串类型(String)(1)变长字符串PrivateSAsString或DimS1AsString(2)定长字符串DimS2AsString*20值用双引号括起来,用于存放字符型数据3.2VB数据类型中国矿业大学计算机学院计算机基础部14例如:Dimstr1AsString*4,str2AsStringstr1=“vb程序”:str2=“123”注意3.2VB数据类型字符串中所包含的字符个数称为字符串长度;变长字符串的长度由赋给它的值的长度决定;对于定长字符串,若赋给它的字符少于定长值,则不足部分由系统自动在右边补空格填满,若超过定长值,则多余部分被自动截去。中国矿业大学计算机学院计算机基础部153.日期数据类型(Date)用8字节的浮点数表示日期和时间,日期范围:100年1月1日-9999年12月31日时间范围:0:00:00-23:59:59日期数据书写形式:任何字面上可认作日期和时间的字符,用“#”括起即可。3.2VB数据类型中国矿业大学计算机学院计算机基础部16例:#January1,1997#、#1Jan,97##5/12/98#、#1998-5-128:30:00PM#日期数据标准格式:#月/日/年##时:分:秒AM或PM##月/日/年时:分:秒AM或PM#3.2VB数据类型中国矿业大学计算机学院计算机基础部174.逻辑数据类型(Boolean)用于逻辑判断。取值:TrueFalse例:23结果为False-5-4结果为True3.2VB数据类型中国矿业大学计算机学院计算机基础部18该类型数据可与整型或长整型互相转换(1)整型数据--逻辑数据非0--True:0--False(2)逻辑数据--整型数据True---1:False--03.2VB数据类型中国矿业大学计算机学院计算机基础部195.对象类型(Object)通过32位(4个字节)存储空间存放可引用应用程序中对象的地址。作用:可以用Set语句将某一实际对象的对象名赋给该对象变量。然后,就可以用对象变量名代替实际的对象名。3.2VB数据类型中国矿业大学计算机学院计算机基础部20例如:DimobjLblAsObjectSetobjLbl=label1objLbl.Caption=Welcome3.2VB数据类型中国矿业大学计算机学院计算机基础部216.变体类型(Variant)为数据处理增加智能性。变体类型:它是一种随时可以改变数据类型的数据,数据类型可根据上下文的变化而变化,是一种万能的数据类型。除去定长String类型和用户自己类型的数据外,它可以保存任何其他类型(数值型、日期型、字符型、对象型)的数据。3.2VB数据类型中国矿业大学计算机学院计算机基础部22PrivateSubForm_Click()DimTAsVariantT=12Form1.PrintTT=“*********”Form1.PrintTEndSub例如:3.2VB数据类型中国矿业大学计算机学院计算机基础部237.自定义类型语法格式:Type自定义类型名元素名[(下标)]As类型名…[元素名[(下标)]As类型名]EndType3.2VB数据类型中国矿业大学计算机学院计算机基础部24举例:TypeStudTypeiNoAsIntegerstrNameAsString*20EndType变量说明:DimStudent1AsStudTypeStudent1.iNo=001Student1.strName=“John”3.2VB数据类型中国矿业大学计算机学院计算机基础部253.3变量与常量一.标识符二.常量三.变量中国矿业大学计算机学院计算机基础部26用来标识常量名、变量名、过程名等元素的符号。标识符命名规则:1.以字母或汉字开头,后可跟字母、数字或下划线组成,标识符的长度不能超过255个字符;2.不能使用VB中的关键字;3.VB中不区分变量名的大小写;4.为了增加程序的可读性,可在变量名前加一个缩写的前缀来表明该变量的数据类型。一、标识符3.3变量与常量中国矿业大学计算机学院计算机基础部27例:strMystringiCountsMaxlX_y_zdblTotaldtYearfTorF3.3变量与常量中国矿业大学计算机学院计算机基础部28在程序运行中值不变的量。1.文字常量•数值常量•字符串常量•日期/时间常量•逻辑型常量2.符号常量3.系统提供的常量二、常量3.3变量与常量中国矿业大学计算机学院计算机基础部291.数值常量一般的数值型常量由正负号、数字和小数点组成,正数的正号可以省略。3.3变量与常量中国矿业大学计算机学院计算机基础部30VB中数值常量有4种表示方式:整型数:123、-225、+3097、-32768~+32767长整型:-2147483648~+2147483647定点数:1.234、-0.345、345.789浮点数:+123.5E+12、+0.23E-120、-9.64E6、–124.56D+123。aE±c=a×10±c3.3变量与常量中国矿业大学计算机学院计算机基础部312.字符串常量值用双引号括起来的一串字符。例:“ABCD”、“12345”“#2/9/1999#”“WPS2000软件”“中国”“”空串注意:在VB中汉字的长度为1而不是23.3变量与常量中国矿业大学计算机学院计算机基础部323.日期/时间型常量#2/9/1999##2/9/199911:02:00AM##11:03:05PM#4.逻辑型常量True、False3.3变量与常量中国矿业大学计算机学院计算机基础部33语法格式:省略[As类型],常量的类型由表达式值的类型决定;为使与变量名区分,一般符号常量名使用大写字母书写。例:ConstMAX=100,MIN=10ConstPI!=3.1415926Const常量名[As类型]=表达式二、常量--符号常量3.3变量与常量中国矿业大学计算机学院计算机基础部34系统定义常量位于对象库中,可通过“对象浏览器”查看.例:vbNormal、vbMinimized等二、常量---系统常量例:在程序中使用语句:Label1.Alignment=vbCenter与下面语句等价:Label1.Alignment=23.3变量与常量中国矿业大学计算机学院计算机基础部35三、变量1.概念在程序运行中随时可以发生变化的量。变量是以符号的形式出现在程序中,程序中的变量在任一时刻都有确定的值。变量在参加运算等处理时,是用它所存储的数据进行运算。变量三要素:•变量名、变量的数据类型、变量的值3.3变量与常量中国矿业大学计算机学院计算机基础部36说明:一个变量在一个时刻只能存放一个值,如果某个变量在程序运行时数据发生变化,则现行值将覆盖原来的数据。例:DimXAsInteger,yAsIntegerX=10:y=8:X=yPrintXX当前时刻的值应为?3.3变量与常量中国矿业大学计算机学院计算机基础部37合法的标识符,不与对象名重名。取容易理解和记忆的符号在同一个范围内必须是唯一的。范围就是可以引用变量的变化域:一个过程、一个窗体等等变量名3.3变量与常量中国矿业大学计算机学院计算机基础部382.变量声明(1)用Dim语句显式声明变量(使用最多的方式)语法格式:Dim变量名[As类型名]或Dim变量名类型符3.3变量与常量中国矿业大学计算机学院计算机基础部39DimiasIntegerDimsum!Dimxassingle,yassingleDimm%,n%Dimch1asstring例:3.3变量与常量中国矿业大学计算机学院计算机基础部40Dim语句的说明:1)一个Dim语句可同时定义多个变量;2)缺省“As类型名”部分的变量默认为变体类型;3)用类型符定义类型时,变量与类型符间不能有空格;4)声明一个变量后,系统自动为该变量赋予一个初始值。3.3变量与常量中国矿业大学计算机学院计算机基础部41例:DimiCouAsInteger,sAllAsSingle等价于DimiCouAsIntegerDimsAllAsSingle也等价于DimiCou%,sAll!3.3变量与常量中国矿业大学计算机学院计算机基础部42(2)用类型说明符来直接声明变量形式:变量名类型符例:iTem%lNum&sHight!dblTatol#strName$cXyz@变量名和类型符之间不能有空格!!3.3变量与常量中国矿业大学计算机学院计算机基础部43(3)隐式声明未进行上述的声明而直接使用的变量,未加说明类型而使用的变量,系统一律按变体型处理原因:变量名书写错误不宜查找建议不使用3