已阅读5页,还剩43页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
3.1 Basic语言字符集及编码规则 3.2 数据类型 3.3 运算符和表达式 3.4 VB 的内部函数,第3章 数据类型、表达式与函数,3.1 Basic语言字符集及编码规则,3.1.1 VB的字符集 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” “Visual Basic 6.0程序设计“ “”(空字符串) VB的字符串分为两种:变长和定长字符串,3.2 数据类型,2.数值型 1) 整数 整型(Integer型):以带符号的两个字节表示 长整型(Long型):长整型以带符号的4字节存储 2) 浮点数 单精度型(Single):以4个字节存储,符号占 1位,指数占 8位,其余23位表示尾数 双精度型(Double):用8个字节存储,符号占1位,指数占11位,其余52位用来表示尾数,3.货币型(Currency) 为表示钱款设置,以8个字节存储,精确到小数点后4位,取值范围为: -922 337 203 685 477.580 8922 337 203 685 477.580 7 4.变体型(Variant) 是一种可变的数据类型,又称为通用型。可以表示任何值,包括数值、字符串、日期时间等 5其他数据类型 字节(Byte) 1个字节的无符号二进制数存储,取值范围为0255,布尔(Boolean) 是一逻辑值True或False,用两个字节存储 日期(Date) 存储为64位浮点数值形式,以符号“#” 括起来 例如:#03-05-04# 对象(Object) 表示图形或OLE对象或其他对象,用4个字节存储 Decimal变量 存储为12个字节的无符号整型形式,并除以一个10的幂数,称为变比因子,标准数据类型,VB主要有两种常量:直接常量和符号常量 1.直接常量 以直接明显的形式给出的各种数据 1) 数值常量 整数常量:十进制、八进制(&O)和十六进制(& H 或& h) 长整型常量:十进制、八进制和十六进制形式 货币型常量(即定点数)、浮点数,3.2.2 常量,2) 字符串常量 由除双引号和回车符之外的ASCII字符组成的字符串 3) 布尔常量 只有“真”和“假”两个值 4) 日期常量 两个“#”符号把日期值括起来表示日期常量 2.符号常量 系统提供了内部符 号常量如:VbOKOnly 用户自定义符号常量 格式为:Public | Private Const常量名As数据类型 =表达式 ,常量名As数据类型=表达式 ,例如:Const as Double=3.14159265358979 在定义时未指明数据类型,则表达式的结果确定类型 Const sss=“你好” 字符串型 同时定义多个符号常数,它们之间要用逗号进行分隔 允许嵌套定义符号常量 Const As Double =3.141592653589793 Const yu As Double= * 2 不允许递归定义符号常量 Public Const A1 = B1 * 2 Public Const B1 = A1 / 2,错,关键字(Public或Private) a:在过程内部(事件过程或通用过程)定义的常量,有效范围只能局限于本过程内部直接用Const关键字定义 b:在模块(窗体模块或标准模块)中用Private关键字定义后对该模块中所有过程都有效 c:在标准模块中用Public关键字定义的符号常量在整个应用程序中的所有过程和模块内都有效,1变量的命名规则 1)变量名必须以字母或汉字开头,所有字母不分大小写 2) 不能包含圆点“.”。 3) 字符总个数不得超过255个字符。 4) 在同一个范围内必须是惟一的。 5) 变量名要“见名知义”,即变量名要便于记忆、有意义。 6) 不能用 Visual Basic的关键字作为变量名。如:print 7) 变量名不能与过程名和符号常量名相同。,3.2.3 变量,2) 隐式声明 不声明变量而直接使用 如:Private Sub Form_Click() Sum=0 A=1:b=2 Sum= a + b Print “Sum =“; Sum End Sub,注:对于字符串类型定义方法有两种: Dim字符串变量名 As String Dim字符串变量名 As String*字符个数,3)强制显式声明(Option Explicit语句) 声明方法: 在模块的通用声明段中加入语句:Option Explicit 在“工具”菜单中选取“选项”命令,然后在打开的对 话框中单击“编辑器”选项卡,再复选“要求变量声明,3.2.4 用户定义的数据类型 利用Type语句定义自己的数据类型,格式如下: Type 数据类型名 数据元素名1 As 数据类型名 数据元素名2 As 数据类型名 End Type,例如:Type Dates Year as intger Month As String*3 Day As integer End Type 定义: static yyy as Dates 引用: yyy. Month,3.2.5 枚举类型 通过Enum语句来定义,格式如下: Public|PrivateEnum类型名称 成员名1=常数表达式 成员名2=常数表达式 End Enum,增加:变量作用域 VB应用程序的三个模块:窗体模块、标准模块、类模块 1.局部变量 过程内部定义 dim或static,过程间引用:过程名.变量名 private sub command1-click() dim a1 as integer 2.窗体变量和模块变量 窗体变量:通用/声明 模块变量:工程/添加模块(dim 或private) 3.全局变量 在标准模块里定义,(public或global),3.3 运算符和表达式 VB有4种运算符: VB表达式: 算术运算符 算术表达式 连接运算符 字符串表达式 关系运算符 关系表达式 逻辑运算符 逻辑表达式,3.3.1 算术运算符与算术表达式 1算术运算符 例:5+10 mod 10 9 / 3 +2 2 结果:10,2算术表达式 由常量、变量、算术运算符、圆括号和函数等连接形成 1)VB中不能省略乘号运算 2)所有的括号一律使用圆括号 3)表示特定含义的符号要写成具体的数值 如:表达式2r,要写成 2*3.14*r,3.3.2 字符串连接运算符( & 和+ ) 例如:“ 123 ” + “ 456 ” 结果 “ 123456 “ “ 123 ” & “ 456 ” 结果 “ 123456 “ 区别: + 两边必须是字符串, & 不一定 例如: “ abcdef “ + 12345 出错 “abcdef“ & 12345 结果为 “abcdef12345 “ “ 123 “ + 456 结果为 579 “ 123 “ & 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-8 5)所有的关系运算符的优先级都相同,从左向右进行运算,2.关系表达式,3.3.4 逻辑运算符和逻辑表达式 格式:关系表达式1逻辑运算符关系表达式2,EPV(等价):两个等时为真 IMP(隐含):第一个true, 第二个false, 结果:false,与日期相关的表达式 1)两个日期型数据相减结果是一个数值型数据 如:#05/18/2004#-#05/16/2004的值为2 2)表示天数的数值加到日期型数据中结果是日期型数据 如:#05/18/2004#+31的值为2004-6-18 3)日期型数据减去一表示天数的数据,结果为一日期型数据 如:#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)=-6 2.舍去小数部分函数Fix(X) 函数格式:Fix(x) 函数功能:去掉x的小数部分,返回值为整型数 举例:设a=5.69,b=-5.88, Fix(a)=5, Fix(b)=-5,3.4 Visual Basic的内部函数,3.求绝对值函数Abs(x) 函数格式:Abs(x) 函数功能:求x的绝对值。 举例:设c=9.56,d=-5.7,则Abs(d+c) 的值为3.86 4.符号函数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.71828182845905 7.对数函数Log(x) 函数格式:Log(x) 函数功能:求以e为底的对数值(即自然对数),x必须为正数 举例:表达式Log(2) 的值为0.693147180559945 8.正弦函数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“的值为“abc xyz”。 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 也可以求出某个变量所占的存储空间 Private Sub Command1_Click() Dim x As Integer Dim y As Single Dim z As Double Print Len(x),Len(y),Len(z) End Sub,8.产生字符串函数 函数格式:String(n,字符) 或String(n, ASCII码) 举例:String(10, “a“) 的值为“aaaaaaaaaa”,String(5, 65) 的值为“AAAAA” 9.产生空格字符串函数 函数格式:Space(n) 举例;“abcd“& space(5) & “xyz“ 的值为“abcd xyz” 10.字符串查找函数 函数格式:InStr(首字符位置, 字符串1,字符串2,n ) 如果找到了则返回“字符串2”在“字符串1”中第一次出现时第一个字符在“字符串1”中的位置,字符串1的长度为0 0 字符串1为Null Null 字符串2的长度为0 首字符位置 字符串2为Nul lNull 在字符串1中未找到字符串2 0 在字符串1中找到字符串2 找到的位置 首字符位置大于字符串2 0 函数的最后一个自变量n是可选的,它是一个整型数,用来指定字符串比较方式 : 0则进行二进制比较,区分字母的大小写, 1则忽略大小写进行比较, 2则基于数据库中包含的信息进行比较 省略时默认为 0,即区分大小写,11.将字符串中的小写字母转换成大写字母函数 函数格式:Ucase(字符串表达式) 12.将字符串中的大写字母转换成小写字母函数 函数格式:Lcase(字符串表达式) 13.求字符的ASCII码函数 函数格式:Asc(字符串表达式) 求字符串表达式中的第一个字符的ASCII码值,14.求ASCll码值对应的字符函数 函数格式:Chr(表达式) 表达式的值必须是一个合法的ASCII码值 15.把字符串转换为数值的函数 函数格式:Val(字符串) 如果字符串是一个非数字字符串,则该函数的函数值为0 字母字符不转换,如:Val(“abcxyz”) 的值为0 Val(“123.4+xyz”) 的值为123.4 16.把数值转换为字符串的函数 函数格式:Str(数值表达式) 举例:Str(23.56) 的值为字符串“23.56”,3.4.5 数据类型转换函数 1.转换为整型数据的函数 函数格式:CInt(数值表达式) 小数部分的第1位进行四舍五入 如 CInt(34.5) =35 2.转换为货币类型数据的函数 函数格式:CCur(数值表达式) 保留4位
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 农村废弃物资源化循环经济建设模式
- 市政管网设备自动化监测与维护方案
- 未来五年带式压滤机行业直播电商战略分析研究报告
- 未来五年口授记录机企业县域市场拓展与下沉战略分析研究报告
- 未来五年猪饲料行业直播电商战略分析研究报告
- 未来五年印刷O2O企业县域市场拓展与下沉战略分析研究报告
- 污水尾水处理与生态恢复联动方案
- 腾龙北路施工方案(3篇)
- 可再生能源集成的热力系统设计
- 建筑工地雨水收集与再利用技术方案
- 国家自然科学基金申请经验汇总课件
- 监造手册第三章船体
- 《忆秦娥·娄山关》课件
- 新《高等教育学》考试复习题库450题(含各题型)
- 最新版个人征信报告(可编辑+带水印)
- 科目一1000题及答案
- 供应商现场审核汇报报告
- 连续性肾脏替代治疗(CRRT)质量控制标准
- 大学生模拟法庭情景剧本100篇
- 嘉兴市生态绿道网规划建设技术导则
- 【思维导图】完整小学英语单词3-6年级各单元单词大全单词梳理(人教版)课件
评论
0/150
提交评论