数据类型、表达式与函数.ppt_第1页
数据类型、表达式与函数.ppt_第2页
数据类型、表达式与函数.ppt_第3页
数据类型、表达式与函数.ppt_第4页
数据类型、表达式与函数.ppt_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

3.1Basic语言字符集及编码规则3.2数据类型3.3运算符和表达式3.4VB的内部函数,第3章数据类型、表达式与函数,3.1Basic语言字符集及编码规则,3.1.1VB的字符集VB的字符集指编写程序时使用的所有符号的集合主要包括三类字符:字母:大写英文字母AZ和小写英文字母az数字:数字是指09专用字符27个,1编码规则1)VB代码中不区分字母的大小写2)同一行可书写多条语句,但要用冒号“:”分隔3)换行时需在行后加入续行符,即1个空格加下划线4)一行最多允许255个字符5)注释以Rem或“”开头,出现在语句前面或后面6)程序转向时用标号,标号以字母开始加一冒号,3.1.2编码规则与约定,2.约定1)关键字的首字母大写。若关键字由多个英文单词组成,则每个单词的首字母都大写,如StudType等2)注释有利于程序的维护和调试,因此要养成注释的习惯设置注释或取消注释的方法:选中要加注释块的语句行单击编辑工具栏的“设置/取消注释块”按钮,3.2.1基本数据类型1.字符串(String)是一除了回车和双引号的字符序列例如:“fghjhh”VisualBasic6.0程序设计“”(空字符串)VB的字符串分为两种:变长和定长字符串,3.2数据类型,2.数值型1)整数整型(Integer型):以带符号的两个字节表示长整型(Long型):长整型以带符号的4字节存储2)浮点数单精度型(Single):以4个字节存储,符号占1位,指数占8位,其余23位表示尾数双精度型(Double):用8个字节存储,符号占1位,指数占11位,其余52位用来表示尾数,3.货币型(Currency)为表示钱款设置,以8个字节存储,精确到小数点后4位,取值范围为:-922337203685477.5808922337203685477.58074.变体型(Variant)是一种可变的数据类型,又称为通用型。可以表示任何值,包括数值、字符串、日期时间等5其他数据类型字节(Byte)1个字节的无符号二进制数存储,取值范围为0255,布尔(Boolean)是一逻辑值True或False,用两个字节存储日期(Date)存储为64位浮点数值形式,以符号“#”括起来例如:#03-05-04#对象(Object)表示图形或OLE对象或其他对象,用4个字节存储Decimal变量存储为12个字节的无符号整型形式,并除以一个10的幂数,称为变比因子,标准数据类型,VB主要有两种常量:直接常量和符号常量1.直接常量以直接明显的形式给出的各种数据1)数值常量整数常量:十进制、八进制(SumEndSub,注:对于字符串类型定义方法有两种:Dim字符串变量名AsStringDim字符串变量名AsString*字符个数,3)强制显式声明(OptionExplicit语句)声明方法:在模块的通用声明段中加入语句:OptionExplicit在“工具”菜单中选取“选项”命令,然后在打开的对话框中单击“编辑器”选项卡,再复选“要求变量声明,3.2.4用户定义的数据类型利用Type语句定义自己的数据类型,格式如下:Type数据类型名数据元素名1As数据类型名数据元素名2As数据类型名EndType,例如:TypeDatesYearasintgerMonthAsString*3DayAsintegerEndType定义:staticyyyasDates引用:yyy.Month,3.2.5枚举类型通过Enum语句来定义,格式如下:Public|PrivateEnum类型名称成员名1=常数表达式成员名2=常数表达式EndEnum,增加:变量作用域VB应用程序的三个模块:窗体模块、标准模块、类模块1.局部变量过程内部定义dim或static,过程间引用:过程名.变量名privatesubcommand1-click()dima1asinteger2.窗体变量和模块变量窗体变量:通用/声明模块变量:工程/添加模块(dim或private)3.全局变量在标准模块里定义,(public或global),3.3运算符和表达式VB有4种运算符:VB表达式:算术运算符算术表达式连接运算符字符串表达式关系运算符关系表达式逻辑运算符逻辑表达式,3.3.1算术运算符与算术表达式1算术运算符例:5+10mod109/3+22结果:10,2算术表达式由常量、变量、算术运算符、圆括号和函数等连接形成1)VB中不能省略乘号运算2)所有的括号一律使用圆括号3)表示特定含义的符号要写成具体的数值如:表达式2r,要写成2*3.14*r,3.3.2字符串连接运算符(&和+)例如:“123”+“456”结果123456“123”&“456”结果123456区别:+两边必须是字符串,&不一定例如:abcdef+12345出错abcdef&12345结果为abcdef12345123+456结果为579123&456结果为123456,字符串表达式是由字符串常量、字符串变量、字符串函数、字符串运算符和括号等连接形成的一个有意义的运算式子如:“xyz”&“123”&left(“abc”,2)字符串连接运算符“&”的优先级低于所有的算术运算符,而高于其他的运算符,3.3.3关系运算符和关系表达式,1.关系运算符,1)两侧参加运算的数据类型必须完全一致2)日期型数据比较,将日期看成“yyyymmdd”的8位整数比较3)常见的字符值的大小比较关系如下:“空格”“0”“9”“A”“Z”“a”“z”所有汉字4)避免两个浮点数直接作“相等”或“不相等”的判别和比较如:1.0/3.0*3.0=1.0应该:Abs(1.0/3.0*3.0-1.0)1E-85)所有的关系运算符的优先级都相同,从左向右进行运算,2.关系表达式,3.3.4逻辑运算符和逻辑表达式格式:关系表达式1逻辑运算符关系表达式2,EPV(等价):两个等时为真IMP(隐含):第一个true,第二个false,结果:false,与日期相关的表达式1)两个日期型数据相减结果是一个数值型数据如:#05/18/2004#-#05/16/2004的值为22)表示天数的数值加到日期型数据中结果是日期型数据如:#05/18/2004#+31的值为2004-6-183)日期型数据减去一表示天数的数据,结果为一日期型数据如:#05/18/2004#-30的值为2004-4-18。,3.3.5各种运算符的优先级比较算术运算符:正负号、*和、Mod、+和-字符串连接运算符(两个运算符级别相同):&和+关系运算符:所有关系运算符的运算级别相同逻辑运算符:Not、And、Or、Xor、Eqv、Imp。,3.4.1数学函数1.取整函数Int()函数格式:Int(x)功能:求不大于x的最大整数,返回值为整型数举例:设x=5.67,y=-5.67,则Int(x)=5,int(y)=-62.舍去小数部分函数Fix(X)函数格式:Fix(x)函数功能:去掉x的小数部分,返回值为整型数举例:设a=5.69,b=-5.88,Fix(a)=5,Fix(b)=-5,3.4VisualBasic的内部函数,3.求绝对值函数Abs(x)函数格式:Abs(x)函数功能:求x的绝对值。举例:设c=9.56,d=-5.7,则Abs(d+c)的值为3.864.符号函数Sgn(x)函数格式:Sgn(x)函数功能:求x的符号,返回值1、-1、0举例:表达式Sgn(-6.7)5.求平方根函数Sqr(x)函数格式:Sqr(x)函数功能:求x的平方根,但x的值必须为非负数举例:表达式Sqr(2)的值为1.4142135623731。,6.指数函数Exp(x)函数格式:Exp(x)函数功能:求以e为底,以x为指数的值,即求e的x次幂举例:表达式Exp(1)的值为2.718281828459057.对数函数Log(x)函数格式:Log(x)函数功能:求以e为底的对数值(即自然对数),x必须为正数举例:表达式Log(2)的值为0.6931471805599458.正弦函数Sin(x)函数格式:Sin(x)函数功能:求x的正弦函数值,x必须为以弧度为单位表示的角度9.余弦函数Cos(x)函数格式:Cos(x)函数功能:求x的余弦函数值,x必须为以弧度为单位表示的角度,3.4.2随机数函数Rnd(x)1.随机数函数Rnd(x)变量x为一双精度数可省略,可产生一个0l之间的单精度随机数当x0时,则每次产生的随机数都相同当x0或省略时,产生下一个随机数当x0时,则该次产生的随机数与上一次产生的随机数相同2.Randomize语句语句格式:Randomize(x),3.4.3数制转换函数l.十进制数转换为十六进制函数函数格式:Hex(x)或Hex$(x),转换后的结果为一字符串2.十进制数转换为八进制函数函数格式:Oct(x)或Oct$(x),转换后的结果为一字符串3.4.4字符串处理函数1.删除字符串两端空格字符函数函数格式:Trim(字符串表达式)举例:Trim(abc)&xyz的值为“abcxyz”。,2.删除字符串左端的空格字符函数函数格式:LTrim(字符串表达式)举例;LTrim(abc)&xyz的值为“abcxyz”。3.删除字符串右端空格字符函数函数格式:RTrim(字符串表达式)举例:RTrim(abc)&xyz的值为“abcxyz”。4.从字符串的左端截取字符函数函数格式:Left(字符串表达式,n)举例:Left(abcdefgh,3)的值为“abc”。5.从字符串的中部截取字符函数函数格式:Mid(字符串表达式,n,m)举例:Mid(abcdefgh,3,5)的值为“cdefg”。Mid(abcdefgh,3)的值为“cdefgh”。,6从字符串的右端截取字符函数函数格式:Right(字符串表达式,n)举例:Right(abcdefgh,4)的值为“efgh”。7求字符串的长度函数函数格式:Len(字符串表达式)或Len(变量名)举例:Len(“abed科学家123”)的值为10也可以求出某个变量所占的存储空间PrivateSubCommand1_Click()DimxAsIntegerDimyAsSingleDimzAsDoublePrintLen(x),Len(y),Len(z)EndSub,8.产生字符串函数函数格式:String(n,字符)或String(n,ASCII码)举例:String(10,a)的值为“aaaaaaaaaa”,String(5,65)的值为“AAAAA”9.产生空格字符串函数函数格式:Space(n)举例;abcd&space(5)&xyz的值为“abcdxyz”10.字符串查找函数函数格式:InStr(首字符位置,字符串1,字符串2,n)如果找到了则返回“字符串2”在“字符串1”中第一次出现时第一个字符在“字符串1”中的位置,字符串1的长度为00字符串1为NullNull字符串2的长度为0首字符位置字符串2为NullNull在字符串1中未找到字符串20在字符串1中找到字符串2找到的位置首字符位置大于字符串20函数的最后一个自变量n是可选的,它是一个整型数,用来指定字符串比较方式:0则进行二进制比较,区分字母的大小写,1则忽略大小写进行比较,2则基于数据库中包含的信息进行比较省略时默认为0,即区分大小写,11.将字符串中的小写字母转换成大写字母函数函数格式:Ucase(字符串表达式)12.将字符串中的大写字母转换成小写字母函数函数格式:Lcase(字符串表达式)13.求字符的ASCII码函数函数格式:Asc(字符串表达式)求字符串表达式中的第一个字符的ASCII码值,14.求ASCll码值对应的字符函数函数格式:Chr(表达式)表达式的值必须是一个合法的ASCII码值15.把字符串转换为数值的函数函数格式:Val(字符串)如果字符串是一个非数字字符串,则该函数的函数值为0字母字符不转换,如:Val(“abcxyz”)的值为0Val(“123.4+xyz”)的值为123.416.把数值转换为字符串的函数函数格式:Str(数值表达式)举例:Str(23.56)的值为字符串“23.56”,3.4.5数据类型转换函数1.转换为整型数据的函数函数格式:CInt(数值表达式)小数部分的第1位进行四舍五入如CInt(34.5)=352.转换为货币类型数据的函数函数格式:CCur(数值表达式)保留4位小数且自动将第5位小数进行四舍五入3.转换为双精度类型数据的函数函数格式:CDbl(数值表达式)4.转换为长整型数据的函数函数格式:CLng(数值表达式),5.转换为单精度类型数据的函数函数格式:CSng(数值表达式)6.转换为变体类型数据的函数函数格式:CVar(数值表达式)7.转换为字符串类型数据的函数函数格式:CStr(表达式)8.转换为日期类型数据的函数函数格式:CDate(表达式),3.4.6日期和时间函数1.取系统当前的日期和时间函数函数格式:Now或Now()返回格式为yy-mm-ddhh:mm:ss2.读取系统当前的日期函数函数格式:Date或Date(),Date$或Date$()可以设置系统当前的日期:Date=日期字符串3读取系统当前的时间函数函数格式:Time或Time(),Time$或Time$()可以设置系统当前的时间:Time=时间字符串,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论