




已阅读5页,还剩15页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第4章VB的运算表达式和内部函数 利用运算表达式 用户可对多个数据进行算术运算 逻辑运算和比较运算等 函数的概念与一般数学中的概念大致相同 函数是一种特定的运算 在程序中要使用一个函数时 只要给出函数名和参数 就能得到它的函数值 在VisualBasic中函数分为两类 内部函数和用户自定义函数 本章主要介绍VisualBasic中的内部函数 4 1运算符和表达式 4 1 1运算的基本概念运算是对数据进行加工的过程 在vb系统中 计算机对数据进行的运算按功能可以划分为四大类 算术 arithmetic 运算比较 comparison 运算即关系运算逻辑 logical 运算连接 concatenation 运算计算机的基本的功能就是进行运算 一个运算表达式的基本构成是运算量 或称操作数 和运算符 运算量就是参与运算的数据 运算符是指能表征各运算量之间运算关系的符号 在运算时 用运算符连接运算量组成一个式子 来表示对运算量进行何种运算 这种由运算符连接运算量组成的式子称为表达式 4 1 2算术运算1 算术运算符算术运算是最常用的运算 很多的运算符都和我们在数学中学到的算术运算符 但也有一部分和数学中的不一样 这些运算符大家要特别记忆一下 否则在写表达式时会发生错误 1 幂运算幂运算用来计算乘方和方根 其运算符为 注意 当指数是一个表达式时 必须加上括号 因为在算术运算符中幂运算具有最高级别 2 浮点数除法与整数除法浮点数除法的运算符是 其结果为浮点数 整数除法的运算符是 执行整除运算 结果为整型值 运算后其结果进行取整操作 不进行舍入处理 4 1 2算术运算 3 取模运算取模运算用来求余数 其结果为第二个操作数整除第一个操作数所得的余数 两个操作数如果为实数 也要先进行四舍五入取整 再进行取模运算 2 算术运算符的优先级不同的算术运算符在表达式中参与运算的级别是不同的 其中幂运算的级别最高 加减运算符的级别最低 先乘除 后加减 乘方优先于乘除 函数优先于乘方 mod次于乘除 优先于加减 括号内最优先 同一级的运算在表达式中 按其位置从左至右进行 比较运算符也称为关系运算符 用来对两个表达式的值进行比较 比较的结果是一个逻辑值 即真 True 或假 False 它们分别表示整型数 1 非零 和0 VisualBasic提供了8个比较运算符 运算量可以是数值型 字符串型 货币型 日期型等类型的量 但是在同一个表达式中两个量应为同一类型 在比较运算符之间的优先级是相同的 但它们的优先级都低于算术运算符 关于比较运算符的几点说明 1 应当尽可能避免对两个浮点数进行 相等 或 不等 的判断 否则可能出错 2 在数学中一个数x是否在区间 a b 时 我们习惯写成a x b 但在VisualBasic中不允许这样表示 应该写成 a xAndx b 4 1 3比较运算 关系运算 3 字符串数据进行比较运算时 按照其ASCII码值进行比较 在比较两个字符串时 先比较第一个字符 其中ASCII码值较大的字符所在字符串大 如果第一个字符相同 再比较第二个 依次类推 4 关系运算符Like用于比较左边的字符串是否与右边的字符串匹配 右边的字符串可包含通配符 等 5 关系运算符Is用于比较两个object类型的变量是否引用同一个对象 4 1 3比较运算 关系运算 4 1 4逻辑运算 逻辑运算是指对两个布尔类型的运算量进行的运算 所以 逻辑运算也称为 布尔 运算 在VisualBasic中 逻辑运算符一共有六个 1 Not 非 由真变假由假变真 进行 取反 运算 2 And 与 对两个关系表达式的值进行比较 如果两个表达式的值均为True 则结果为True 否则结果为False 3 Or 或 对两个表达式进行比较 如果其中一个表达式的值为True 那么结果为True 当且仅当两个表达式的值都是False 结果才为False 4 1 4逻辑运算 4 Xor 异或 当两个表达式的值一个为True 另一个为False时 结果为True 否则结果为Fasle 5 Eqv 等价 如果两个表达式同时为True或同时为Fasle时 其结果为True 否则结果为Fasle 6 Imp 蕴含 当第一个表达式为True 且第二个表达式为Fasle 其结果为Fasle 4 1 5连接运算 连接运算符可以对各种不同的运算量或表达式进行连接运算 连接运算符为 在各种不同的运算符之间 连接符的优先顺序是排在所有的算术运算符的后面 但是在比较运算符之前 在连接表达式中若含有其他类型的运算表达式 系统会对各个表达式进行计算 然后进行连接 除了 外 算术运算符 也可以用做字符串连接符 注意 号只能用于连接字符串 4 1 6表达式的执行顺序 一个表达式可能含有多种运算 计算机按一定的顺序对表达式求值 一种类型的运算其各运算符之间有不同的优先级 不同种类的运算之间还有不同的优先级 一般的优先顺序如下 1 首先进行函数运算 2 接着进行算术运算 其次序为 从左至右 优先级递减 幂 取负 乘 浮点除 整除 取模 mod 加 减 3 接着进行连接运算 4 然后进行比较运算 5 最后进行逻辑运算 顺序为 从左至右 优先级递减 Not And Or Xor Eqv Imp 4 1 6表达式的执行顺序 两点说明 1 乘法和浮点除 或者加和减 同时出现在表达式中时 将按照它们从左至右出现的顺序进行计算 用括号可以改变表达式的优先顺序 强令它的某些部分优先运行 括号内的运算总是优先于括号外的运算 2 当幂和负号相邻 负号优先 在书写表达式时 应注意以下几点 1 乘号不能省略 也不能象在数学中那样用 代替 2 在一般情况下 不允许两个运算符相连 应当用括号隔开 3 在表达式中使用括号只能用圆括号 不能用方括号和或花括号 4 在幂运算中当表达式不是单个常量或变量时 要用括号括起来 4 2常用内部函数 VisualBasic提供了大量的内部函数 内部函数也称标准函数 是VB系统提供的 使用时只要直接调用函数名即可 在这些函数中 有些是通用的有些则与某种操作有关 大体分为5类 本节先介绍数学函数 转换函数 日期函数 时间函数和随机函数 下一小节再来介绍字符串函数 4 2 1常用内部函数 1 数学函数2 转换函数3 时间日期函数4 随机数函数 4 2 2立即窗口 为了检验每个函数或表达式的操作 可以编写事件过程如Form Click或Command1 Click 但这样做比较繁琐 因为必须执行事件过程才能看到结果 为此 VisualBasic中提供了命令解释程序 CLI CommandLineInterpreter 可以通过命令行直接显示函数的执行结果 但要实现这一功能必须先打开立即窗口 这可以通过选择 视图 菜单中的 立即窗口 命令实现 在立即窗口中可以输入命令 命令解释程序对输入的命令进行解释 并立即响应 与DOS下命令行的执行情况类似 4 3字符处理和字符串函数 4 3 1VisualBasic字符处理机制在VisualBasic中提供了大量的字符串操作函数 字符串函数大都以类型说明符 结尾 表明函数的返回值为字符串 但是在在VisualBasic6 0中 函数末尾的 可以有 也可以省略 其功能相同 在早期的VisualBasic版本中 字符处理采用的是ANSI字符处理机制 西文字符占用一个字节进行编码 中文字符占用两个字节进行编码 ANSI字符处理机制是VisualBasic4 0以前版本的编码方式 VisualBasic4 0及其以后版本VB的字符处理机制采用的是Unicode方式 统一编码方式 把各国文字字符作为一个统一的整体进行编码 在这种机制下一个英文字符或一个汉字都可以看作是一个字符 所占用的存储空间均为两个字节 4 3字符处理和字符串函数 4 3 1VisualBasic字符处理机制Unicode方式实现了中 西文字符的统一编码 但给中 西文字符混合编码带来了麻烦 因为在单字节处理方式 ANSI 中 对字符串的处理是以字节为单位的 而在大字符的编码方案中 对字符串的处理是以字符为单位的 这样就会给原有的字符串处理带来混乱 为了解决这个问题 Microsoft在新版本的VisualBasic中新增加了一组字符串处理函数 以兼容原有的ANSI 这些新增加的字符串处理函数就是在原来函数的函数名后面加一个字母 B 如LenB LeftB等等 加了字母 B 的字符串处理函数用于ANSI编码方式 为了实现ANSI与Unicode之间的转换 VisualBasic提供了一个转换函数StrConv 格式如下 新字符串 StrConv 待转换字符串 转换格式 4 3字符处理和字符串函数 4 3 2字符串函数在VB中提供了大量的字符串操作函数 可以对字符串进行各种各样的处理 对于这些函数来说一般有四种形式 末尾是否加字符串类型标识符 或者是否用于ANSI编码方式 四种形式如下所示 函数名 参数1 参数2 函数名 参数1 参数2 用于ANSI格式的字符串函数名B 参数1 参数2 函数名B 参数1 参数2 4 3 2字符串函数 1 字符串长度测试函数格式 Len 字符串 Len 变量名 功能 测试指定字符串的长度 即字符个数 或者测试变量的存储空间 2 字符串截取函数用来截取字符串的一部分 可以从字符串的左部 右部或中部截取 1 左部截取格式 Left 字符串 n 返回字符串的前 n 个字符 2 中部截取格式 Mid 字符串 n1 n2 从第n1个字符开始共截取n2个字符 4 3 2字符串函数 3 右部截取格式 Right 字符串 n 返回字符串的后n个字符 3 删除空白字符串函数 1 Ltrim 字符串 删除左侧的空白字符串 2 Rtrim 字符串 删除右侧的空白字符串 3 Trim 字符串 删除左右两侧的空白字符串4 String函数格式 String n ASCII码 或者String n 字符串 返回由n个指定字符组成的字符串 第二个自变量可以是ASCII码 也可以是字符串 当是ASCII码时 返回n个跟这个码值对应的字符 当是字符串时 返回n个该字符串的首字符 4 3 2字符串函数 5 空格函数格式 Space n 返回n个空格 6 大小写转换函数格式 Ucase 字符串 小写字母转换为大写字母Lcase
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【正版授权】 ISO/PAS 15118-202:2025 EN Road vehicles - Vehicle to grid communication interface - Part 202: Extensible SECC Discovery Protocol and Event Notification Protocol
- 计算机三级题库检测试题打印【必刷】附答案详解
- OT网络安全解决方案市场分析:预计2031年全球市场规模将为 206.5亿美元
- 辽宁省凌源市中考数学试题(预热题)附答案详解
- 2024-2025学年护士资格证考前冲刺练习【轻巧夺冠】附答案详解
- 2025安庆师范大学单招《英语》每日一练试卷附完整答案详解【历年真题】
- 交房物业收合同(标准版)
- 墓地占用土地合同(标准版)
- 2025执法资格能力检测试卷含完整答案详解【易错题】
- 养老院医疗应急预案(30篇)
- 室内墙体拆除合同全文
- 2025年中国移动初级解决方案经理学习考试题库大全-上(单选题)
- 江苏苏州历年中考语文现代文之散文阅读13篇(截至2024年)
- 临床用血管理制度课件
- 体育行业反兴奋剂管理制度
- 护理管理的发展史
- 《以产地命名中药》课件
- 广西恒镒矿业贸易有限公司广西苍梧县古木口矿区金矿矿山地质环境保护与土地复垦方案
- 有限元模拟与磨损寿命预测结合-洞察分析
- 配音课件资源教学课件
- 191118-锂离子电池专业术语英语对照大全
评论
0/150
提交评论