第4章VisualBasic程序设计基础

上传人:人*** 文档编号:567500167 上传时间:2024-07-20 格式:PPT 页数:127 大小:491.50KB
返回 下载 相关 举报
第4章VisualBasic程序设计基础_第1页
第1页 / 共127页
第4章VisualBasic程序设计基础_第2页
第2页 / 共127页
第4章VisualBasic程序设计基础_第3页
第3页 / 共127页
第4章VisualBasic程序设计基础_第4页
第4页 / 共127页
第4章VisualBasic程序设计基础_第5页
第5页 / 共127页
点击查看更多>>
资源描述

《第4章VisualBasic程序设计基础》由会员分享,可在线阅读,更多相关《第4章VisualBasic程序设计基础(127页珍藏版)》请在金锄头文库上搜索。

1、江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版第四章第四章VisualBasic程序设计基础程序设计基础圈事怪拐咆庸停旗裳观绸好绒逮粗瓷屈让物串陛驹侠亩橙束碴借霞拓路咙第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版本章主要内容本章主要内容VisualBasic语言字符集及编码规则语言字符集及编码规则数据类型数据类型常量和变量常量和变量运算符和表达式运算符和表达式常用内部函数常用内部函数滤碎莱表廓扑勉腔刁遭圆眷蕊仆逞遂钙忱淑絮匡狞铬哗趟仑藉不丑底芍条

2、第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版学习重点学习重点清楚各种常用数据类型,掌握其表示以及清楚各种常用数据类型,掌握其表示以及各类数据在内存中的存放形式,了解自定各类数据在内存中的存放形式,了解自定义数据类型义数据类型理解常量和变量的概念、掌握其定义和使理解常量和变量的概念、掌握其定义和使用用掌握各类运算符、表达式和常用内部函数掌握各类运算符、表达式和常用内部函数的功能和使用方法的功能和使用方法黎龚雀膳病绩逝清仆诬博挛届归鹊喉篡剖食峦效目傈茹蝗卑楔芽荤皖榜橡第4章Visua

3、lBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.1.1VisualBasic语言字符集语言字符集VB语言字符集与其他高级程序设计语言的语言字符集与其他高级程序设计语言的字符集类似,包含字母、数字和专用字符字符集类似,包含字母、数字和专用字符三大类,共计三大类,共计89个字符:个字符:字母:大写英文字母字母:大写英文字母AZ;小写英文字母;小写英文字母az数字:数字:09专用字符:共计专用字符:共计27个个窝芝旬猜缀小钱裁酚帽珐祝戏饿罗蔓贿契爸赢距队猴彤嗣商举蔬涅贺桩恿第4章VisualBasic

4、程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.1.2编码规则(编码规则(1)VisualBasic中的语句是执行具体操作的指令,每条语句中的语句是执行具体操作的指令,每条语句以回车键结束。在一般情况下,输入程序时要求按行书写,以回车键结束。在一般情况下,输入程序时要求按行书写,一行上书写一条语句,一句一行。一行上书写一条语句,一句一行。VisualBasic允许使用复合语句行,即在同一行上书写多允许使用复合语句行,即在同一行上书写多条语句,则各语句间必须用冒号条语句,则各语句间必须用冒号“:”隔开;注意:

5、一个语隔开;注意:一个语句行的长度最多不能超过句行的长度最多不能超过1023个字符,且在一行的实际个字符,且在一行的实际文本之前最多只能有文本之前最多只能有256个前导空格。个前导空格。VisualBasic允许一条较长的语句分多行书写,但必须在允许一条较长的语句分多行书写,但必须在续行的行末加入续行符续行的行末加入续行符“_”(一个空格和下划线),表示(一个空格和下划线),表示下一行与该行属于同一个语句行;一个逻辑行最多只能有下一行与该行属于同一个语句行;一个逻辑行最多只能有25个后续行。个后续行。叙迢票聚柿醒蕴晰摹躬啊揉蚌咖技档项倘搭蒲注息檄挺方楚躁巾攻舆霞济第4章VisualBasic程

6、序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.1.2编码规则(编码规则(2)VB代码不区分字母的大小写代码不区分字母的大小写VB代码中必须使用西文标点代码中必须使用西文标点VB标识符的命名规则:标识符的命名规则:必须以字母或汉字开头,由字母、汉字、数字或下划必须以字母或汉字开头,由字母、汉字、数字或下划线组成线组成字符必须并排书写,不能出现上下标形式字符必须并排书写,不能出现上下标形式长度小于等于长度小于等于255个字符个字符不可以是系统关键字不可以是系统关键字不能包含空格、西文标点符号和类型说明符不能包含

7、空格、西文标点符号和类型说明符%、&、!、#、$在作用域范围内必须唯一在作用域范围内必须唯一注意:虽然注意:虽然VB中可以使用汉字进行标识符命名,但是为中可以使用汉字进行标识符命名,但是为了书写方便,一般不使用汉字了书写方便,一般不使用汉字纲桐屠燕零础缸芋犊誉腐虎悯阀睁外躺胁擂硷虑拼世冗盯锰谰顶间丘堕鸵第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.1.2编码规则(编码规则(3)使用注释增加程序的可读性。注释语句格式:使用注释增加程序的可读性。注释语句格式:格式格式1:Rem注释

8、内容注释内容格式格式2:注释内容注释内容说明:注释语句是非执行语句,仅仅对相应位置上的说明:注释语句是非执行语句,仅仅对相应位置上的代码起到注释作用。格式代码起到注释作用。格式1中的关键字中的关键字Rem和注释内容和注释内容之间必须用空格隔开;注释内容中可以包含任意字符之间必须用空格隔开;注释内容中可以包含任意字符(西文、中文等西文、中文等);格式;格式1是以单独注释语句形式出现;是以单独注释语句形式出现;格式格式2在使用时较格式在使用时较格式1更加灵活,可以以单独注释语更加灵活,可以以单独注释语句形式出现,也可直接出现在某行语句后面进行注释,句形式出现,也可直接出现在某行语句后面进行注释,但

9、是续行符后面不能加注释。但是续行符后面不能加注释。着婚吴滦唉烹权桨谎增拦寂洪逾蔡抒胜购憋犹毗亮厦炼可戚绎翠傣宁虚猎第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.2数数据据类类型型数值数据类型数值数据类型字符数据类型字符数据类型String逻辑数据类型逻辑数据类型Boolean日期数据类型日期数据类型Date对象数据类型对象数据类型Object变体数据类型变体数据类型Variant款抵咬邓人救宣若睫价裕扬孕冬减砷捧蛀贵窘吉扒骡援价石骂陕旨闪浴典第4章VisualBasic程序设计

10、基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版注意点注意点注注1:数据类型问题:数据类型问题选用什么类型满足数据的表示要求选用什么类型满足数据的表示要求如何用最节约、最有效率的方法表示数据如何用最节约、最有效率的方法表示数据原则:原则:能用占用较少字节的类型尽量使用占用字节较少的数能用占用较少字节的类型尽量使用占用字节较少的数据类型据类型注注2:对象属性类型:对象属性类型Width、Height、Top、Left属性取值为数值类型属性取值为数值类型Caption、Text属性取值为字符串类型属性取值为字符串类型Vis

11、ible、Enabled属性取值为布尔类型属性取值为布尔类型胸喻拜伤弧柬笆径娶秀瓜间嘿做耿兰纸若旋缔值宜妙疽杖汪飞媒化势梳负第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版1Integer和和Long用于保存带有符号的、不带小数点和指数符号的整数,存用于保存带有符号的、不带小数点和指数符号的整数,存放整数的字节最高位是符号位。整数运算速度快、精确,放整数的字节最高位是符号位。整数运算速度快、精确,但表示数的范围小。但表示数的范围小。整数的表示形式为整数的表示形式为n%或或n&Inte

12、ger型整数能表示型整数能表示-32768+32767范围内的整数,范围内的整数,%是是Integer整型的类型说明符,可省略整型的类型说明符,可省略Long型整数能表示型整数能表示-2147483648,2147483647范围内范围内的整数,的整数,&是是Long长整型的类型说明符。长整型的类型说明符。356、+356、-356、356%合法合法Integer型常量型常量35689、-1246978、356&合法合法Long型常量型常量龋砚淹累盈廷神干顾膘谎从薪绒兼盎渍淹综怂矮埃送嗜斩冻嗜专战佑溢籍第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算

13、机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版2Single、Double用于保存浮点实数(带有小数部分的数值),浮点实数表用于保存浮点实数(带有小数部分的数值),浮点实数表示数的范围大,但有误差,且运算速度慢。示数的范围大,但有误差,且运算速度慢。单精度浮点数精度为单精度浮点数精度为7位,双精度浮点数精度为位,双精度浮点数精度为1516位。位。单精度型和双精度型常量有两种表示形式,即单精度型和双精度型常量有两种表示形式,即小数小数形式和形式和指数指数形式。形式。指数形式由符号、指数和尾数指数形式由符号、指数和尾数3部分组成部分组成单精度浮点数和双精度浮点数的指数分别用单

14、精度浮点数和双精度浮点数的指数分别用“E”(或(或“e”)和)和“D”(或(或“d”)来表示,含义为)来表示,含义为“乘以乘以10的幂次的幂次”。端挨扮霖巫习魔蚜炔台庆茸辱裴萎枪序腋萝啦现哩深岂掠脏倍坡咽粮搁雄第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版2Single、Double单精度型表达形式:单精度型表达形式:n!、nEm、n.nEm双精度型表达形式:双精度型表达形式:n.n、n#、nDm、n.nDm其中,其中,n、m是无符号整数是无符号整数-2.15!、!、0.123!、

15、0.34625E+3、2.34E8、123.4E-3表示合法的单精度数表示合法的单精度数-346.25、1234567.89、90.3#、3D10、1.2D-6、0.34625E+3#表示合法的双精度数表示合法的双精度数耙据焚育嫌饥居臻丰阜辊棺佳馈腐注晚倡馒蜀渗酉杂缀霓惭抛开魂结肤羡第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版2Single、Double单精度型和双精度型常量的小数形式若超出有效位数,进单精度型和双精度型常量的小数形式若超出有效位数,进行小数部分的截取;若整数部分

16、超出有效位数,自动转为行小数部分的截取;若整数部分超出有效位数,自动转为指数形式表示。指数形式表示。当幂为正数时,正号可以省略当幂为正数时,正号可以省略2.34E8等价于等价于2.34E+83D10等价于等价于3D+10同一个实数有多种表示形式同一个实数有多种表示形式-346.25可以表示为可以表示为-3.4625D+2、-0.34625D+3、-34.625D+1、-3462.5D-1、-34625.D-2等等一般将一般将-3.4625D+2称为称为“规格化指数形式规格化指数形式”默认情况的直接实型常数都是双精度类型默认情况的直接实型常数都是双精度类型-346.25与与-346.25#是等价

17、的双精度类型常数。是等价的双精度类型常数。萍涸嘛脊泵墙版书沫脑刺掳笼锈屈绥岛哲核堰眷帽专吃粗顶糠弄蝎赐摆师第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版3Currency货币数据类型是为表示钱款而设置的,是定点实数或整数,货币数据类型是为表示钱款而设置的,是定点实数或整数,精确到小数点后精确到小数点后4位和小数点前位和小数点前15位,用于货币运算。位,用于货币运算。表示形式在数字后加表示形式在数字后加符号符号-346.25、2346、0.1234都是合法的货币数据形都是合法的货币数

18、据形式式。孙舵校莽伙方旨堵踊疲熊觉宛邪铰舒瞪茂月桐勃握倍涤砧擎避亥霉做咐贴第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4Byte字节实际上是一种数值类型,以字节实际上是一种数值类型,以1个字节的个字节的无符号二进制数存储。无符号二进制数存储。匪队息烈盼帚屿已毯缸西绦端诉娟义宽抠藏枉涧氛收哆课葫串豆瓦纠借惰第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版说明说明不同类型的

19、数据取值的范围、所适应的运算不同,在内存不同类型的数据取值的范围、所适应的运算不同,在内存中所分配的存储单元数目也不同,因此正确地区分和使用中所分配的存储单元数目也不同,因此正确地区分和使用不同的数据类型,不仅可满足处理问题表示数据的要求,不同的数据类型,不仅可满足处理问题表示数据的要求,而且可使程序运行时占用较少的内存,确保程序运行的正而且可使程序运行时占用较少的内存,确保程序运行的正确性和可靠性确性和可靠性VisualBasic规定在数值型常数后加类型说明符可以改变规定在数值型常数后加类型说明符可以改变数据的类型,从而改变数据在内存中的存储空间大小。数据的类型,从而改变数据在内存中的存储空

20、间大小。3456%、3456&、3456!(或(或0.3456E+4)、)、3456#(或(或3456.0、0.3456D+4、0.3456E+4#)、)、3456都都表示与表示与3456同值的数据,但是类型不同在计算机内存同值的数据,但是类型不同在计算机内存中所占用的空间不同。中所占用的空间不同。确溅粮卢沤衡摊掩弧后砒确色遗盖钦陨丈公巩艾理游抛谚部没灌嫂谰咖袁第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.2.2字符数据类型字符数据类型String字符串是字符序列,由西文字符、

21、汉字和标点符字符串是字符序列,由西文字符、汉字和标点符号组成,在号组成,在VB中字符串常量两端用双引号中字符串常量两端用双引号括括起起456VB程序设计程序设计“01/02/2008,PM-12:30:24说明:说明:(1)是长度为是长度为0(既不含任何字符)的字符串,称(既不含任何字符)的字符串,称为空字符串(或空串)。为空字符串(或空串)。(2)若字符串中有双引号,可用连续的两个双引号)若字符串中有双引号,可用连续的两个双引号表示字符串中的表示字符串中的,示例如下:,示例如下:学习学习VB课程课程表示字符串:学习表示字符串:学习VB课程课程(3)VisualBasic中的字符串变量有定长和

22、变长两种,中的字符串变量有定长和变长两种,在定义时是有区别的。在定义时是有区别的。题匣盖勘维移碾景苹铺竟槽饭檄索矽讣床烁旧倔颇里讹透瞳乃嗡砂躇裙灭第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.2.3逻辑数据类型逻辑数据类型Boolean逻辑数据类型又称布尔类型,用于逻辑判逻辑数据类型又称布尔类型,用于逻辑判断,只有断,只有True和和False两种取值,描述两种取值,描述“真真/假假”、“对对/错错”、“是是/否否”、“开开/关关”等两种状等两种状态信息。态信息。Enabled

23、、Visible、FontBold等就是取值等就是取值为为True或或False的逻辑型属性,因此常常与的逻辑型属性,因此常常与条件判断语句配合,获取对象的状态信息。条件判断语句配合,获取对象的状态信息。诀返税驴袁惩酸该雏渴份黎泡乓渡蝎冷跋竖抵先概窘晰皱演谣叔萌衰腮段第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.2.4日期数据类型日期数据类型Date日期型数据以日期型数据以8个字节的浮点数值表示,可以表示的日期个字节的浮点数值表示,可以表示的日期范围为公元范围为公元100年年1

24、月月1日日9999年年12月月31日,时间范围为日,时间范围为0:00:0023:59:59。日期型数据的两种表示法:日期型数据的两种表示法:任何在字面上表示日期和时间的字符,两端用任何在字面上表示日期和时间的字符,两端用“#”括起来括起来#3/8/2008#3-8-2008#March82008#2008-3-820:20:20PM#数值表示:数值的整数部分表示距离数值表示:数值的整数部分表示距离1899年年12月月30日的天数,小日的天数,小数部分表示时间,数部分表示时间,0为午夜,为午夜,0.5为中午为中午12点,负数代表的是点,负数代表的是1899年年12月月31日之前的日期和时间。日

25、之前的日期和时间。箭昌抒坍杨疏粒蓝淤剖潜孤被椎憨诊轰衬龟桓般啸况惶疤叮夸原豌张涛渔第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.2.5对象数据类型对象数据类型Object对象型数据用来表示图形、对象型数据用来表示图形、OLE对象或其对象或其他对象,也可以使用对象型数据的属性和他对象,也可以使用对象型数据的属性和方法。方法。翼娩眨转冀荔境汁仔胳狰抡喧裳阳乓楔蹲乐宁楼台唬卧碗勘花轩绝誉客荷第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机

26、基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.2.6变体数据类型变体数据类型Variant变体数据类型是一种可变的数据类型,可以表示变体数据类型是一种可变的数据类型,可以表示任何值,包括数值、字符串、日期任何值,包括数值、字符串、日期/时间等。变量时间等。变量如果不加类型说明,系统默认为变体型如果不加类型说明,系统默认为变体型(Variant),可使用),可使用VarType函数检测变体型变函数检测变体型变量中保存的数值究竟是何类型。量中保存的数值究竟是何类型。Variant类型的变量还可以包含类型的变量还可以包含Empty(未赋值)、(未赋值)、Null(未知或缺少的

27、值,常见于数据库)和(未知或缺少的值,常见于数据库)和Error(出现错误时的值)(出现错误时的值)3个特殊值,可以使用个特殊值,可以使用IsEmpty函数来测试一个函数来测试一个Variant变量是否被赋过变量是否被赋过值,使用值,使用IsNull函数来测试一个函数来测试一个Variant变量是否变量是否具有具有Null值。值。昔不蹦躺暗襟鼓红法违妹烘坏赶艘驱瞎计窒拿雏鼎枉听施芯檀掌删阻兜拖第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.3常量和变量常量和变量4.3.1数据的存

28、储数据的存储程序运行时,使用的各种类型数据都是存放在内存单元中,并且程序运行时,使用的各种类型数据都是存放在内存单元中,并且给内存单元取名,计算机就是通过内存单元名来访问其中的数据。给内存单元取名,计算机就是通过内存单元名来访问其中的数据。内存中的存储单元分为静态存储区和动态存储区。静态存储区中内存中的存储单元分为静态存储区和动态存储区。静态存储区中的存储单元一旦分配,要到应用程序结束时才释放空间;动态存的存储单元一旦分配,要到应用程序结束时才释放空间;动态存储区中的单元则可以在应用程序执行中释放,数据也可以被多次储区中的单元则可以在应用程序执行中释放,数据也可以被多次更新。更新。VB中数据都

29、有中数据都有常量常量和和变量变量形式。常量是存放在静态存储区的常量形式。常量是存放在静态存储区的常量区中的数据。常量区一旦放入数据就不允许用户修改,即区中的数据。常量区一旦放入数据就不允许用户修改,即常量在在程序执行期间,程序执行期间,其值是不发生变化的,直到数据单元被释放。变的,直到数据单元被释放。变量是存储单元的代号,对应于存放在动态存储区的单元或静态存量是存储单元的代号,对应于存放在动态存储区的单元或静态存储区的非常量区;程序执行过程中,使用变量来暂时存放程序中储区的非常量区;程序执行过程中,使用变量来暂时存放程序中有用的数据,有用的数据,变量的的内容可以允许多次更新(存入新的数据)。(

30、存入新的数据)。攘雏豺厌破忠烦桌姆胸袒蛔荐屋勉蛤膏疗谚造寒谓谷甘驾槛堪狭惭莎闯否第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.3.2常量常量根据表示形式可以将常量分为直接常量和符号常量根据表示形式可以将常量分为直接常量和符号常量1直接常量(字面常量)直接常量(字面常量)直接常量可从形式上判断其类型和大小直接常量可从形式上判断其类型和大小#3/8/2008#为日期型常量为日期型常量230.0为为Double型常量型常量asdf、230.0为字符串常量为字符串常量可以在常量值后加类

31、型说明符(可以在常量值后加类型说明符(%、&、!、#、)来)来说明常数的数据类型说明常数的数据类型345%为为Integer类型常量类型常量在在VB中的整型常量中,默认是用十进制表示的数值中的整型常量中,默认是用十进制表示的数值八进制常数在数值前加八进制常数在数值前加&O,如,如&O567,&O777等等十六进制常数在数值前加十六进制常数在数值前加&H,如,如&H189,&HFFFF等。等。VB中中的颜色数据常用十六进制整数表示,如的颜色数据常用十六进制整数表示,如&H0000FF00表示绿表示绿色。色。帆佳呜喷舰秸琵仅炭捡兰娄营骄磋抬瞩喘粹隋凑悄讯楔峰陵依瘤筛绒捍芍第4章VisualBasi

32、c程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版2符号常量符号常量VisualBasic中的符号常量分为用户自定义符号常量和系中的符号常量分为用户自定义符号常量和系统符号常量。统符号常量。Const语句语句用户自定义用户自定义符号常量符号常量来代替指定的值来代替指定的值格式:格式:Private|PublicConst常量名常量名As类型名类型名=表达式表达式ConstPIAsDouble=3.1415926535声明声明PI为双精度符号常量,值为为双精度符号常量,值为3.1415926535ConstNAT

33、IONALDAYAsDate=#10/1/1949#声明声明NATIONALDAY为日期常量,值为为日期常量,值为1949年年10月月1日日ConstaAsInteger=5,bAsDouble=12.5一句语句中定义多个常量,中间用逗号隔开一句语句中定义多个常量,中间用逗号隔开己溶掖小韶婉泰高桓蹬鉴粉鲁民菠脉裕仓炔更帐祷秦冈丙尽哺古猖多贴召第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版Const语句格式说明语句格式说明常量名的命名遵循常量名的命名遵循VisualBasic标识符的

34、命名规则,标识符的命名规则,符号常量名常常使用大写字母。符号常量名常常使用大写字母。As类型名:说明该符号常量的数据类型,若缺省,则类型名:说明该符号常量的数据类型,若缺省,则由其右侧表达式的数据类型决定常量类型。由其右侧表达式的数据类型决定常量类型。用户也可以在常量名后加类型说明符,定义该常量的用户也可以在常量名后加类型说明符,定义该常量的类型类型ConstPI#=3.1415926535声明声明PI为为双精度符号常符号常量,值为量,值为3.1415926535表达式可以由运算符、常量(直接常量和已定义的符表达式可以由运算符、常量(直接常量和已定义的符号常量)组成,必须具有一个确定的值;注意

35、,该表达式号常量)组成,必须具有一个确定的值;注意,该表达式中绝对不允许使用变量、函数。中绝对不允许使用变量、函数。ConstTAXMIN!=0.05ConstTAXMAX!=10*TAXMIN搭锗鞭豹卑麦霄膀柞勋侍燕梧蜜坝糊迷堕室哪怨瞩厦券纸髓搭者追悦度承第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版Const语句格式说明语句格式说明Public选项只能用在标准模块的通用部选项只能用在标准模块的通用部分,表示该符号常量可以在整个应用程序分,表示该符号常量可以在整个应用程序中使用,

36、中使用,Private选项则可用在模块(包括选项则可用在模块(包括窗体模块和标准模块)的通用部分,表示窗体模块和标准模块)的通用部分,表示该符号常量可以在该模块范围内使用。默该符号常量可以在该模块范围内使用。默认情况为认情况为Private。符号常量一旦声明,在之后的代码中只符号常量一旦声明,在之后的代码中只能引用,不能再次定义或赋值。能引用,不能再次定义或赋值。犹糠胃竿了非鸣悠怖抒倚疫认掀犬赶短翱琢夸炒歼裳伐拘活闻逝倾群蚂一第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版(2)系统

37、符号常量)系统符号常量VB系统本身提供了一些符号常量,存放于系统的对象库系统本身提供了一些符号常量,存放于系统的对象库中。如中。如vbOK、vbRed、vbYes等,用户可以在等,用户可以在“对象浏对象浏览器览器”中查看中查看VisualBasicforApplications(VBA)、)、ActiveX控件、控件、MicrosoftExcel和和MicrosoftProject等提供对象库的应等提供对象库的应用程序也提供了符号常量,这些符号常量可与应用程序的用程序也提供了符号常量,这些符号常量可与应用程序的对象、方法和属性一起使用对象、方法和属性一起使用为避免不同对象中同名变量的混淆,在引

38、用时使用为避免不同对象中同名变量的混淆,在引用时使用2个小个小写字母前缀,区分引用哪个对象库中符号常量写字母前缀,区分引用哪个对象库中符号常量vb表示引用表示引用VB和和VBA中的符号常量中的符号常量xl表示引用表示引用Excel中的符号常量中的符号常量db表示引用表示引用DataAccessObject中的符号常量中的符号常量光梗照棱争容反豹煎鲍雅完汹突苇够兢励函错迟禹息钙恃甄午榴痔妇循侦第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版(2)系统符号常量)系统符号常量在使用时既可以

39、使用系统符号常量,也可在使用时既可以使用系统符号常量,也可以直接使用系统符号常量对应的数值。以直接使用系统符号常量对应的数值。Form1.BackColor=vbRedForm1.BackColor=255Form1.BackColor=&HFF以上以上3条语句执行时都能将窗体的背景色更新为条语句执行时都能将窗体的背景色更新为红色,显然使用系统符号常量红色,显然使用系统符号常量vbRed,程序代,程序代码的可读性更强。码的可读性更强。炭化汐寻榷案明半览确废内侵朱侦柞施此挺戎岁翟筒兢氯孕赔却朽拼担轨第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础

40、课程组制作江南大学计算机基础课程组制作 2011 2011版版4.3.3变量变量在程序运行过程中,内存单元中数据值可以改变在程序运行过程中,内存单元中数据值可以改变的称为变量。一个变量必须有一个名字和相应的的称为变量。一个变量必须有一个名字和相应的数据类型,通过名字来引用一个变量,而数据类数据类型,通过名字来引用一个变量,而数据类型则决定了该变量的存储方式和在内存中占据存型则决定了该变量的存储方式和在内存中占据存储单元的大小储单元的大小变量名实际上是一个符号地址,程序编译连接时,变量名实际上是一个符号地址,程序编译连接时,由系统给每一个变量分配一个内存地址,在该地由系统给每一个变量分配一个内存

41、地址,在该地址的存储单元中存放变量的值。在程序中从变量址的存储单元中存放变量的值。在程序中从变量中取值,实际上是通过变量名找到相应的内存地中取值,实际上是通过变量名找到相应的内存地址,从其存储单元中取数据。注意变量名和变量址,从其存储单元中取数据。注意变量名和变量值这两个概念的区别。值这两个概念的区别。恭乔性猜踏破钧忧各窖油利迈丧那擂评歼鳃棍皆舷档茵袭状算蚤邵征樱呀第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.3.3变量变量在在VisualBasic中,变量有两种形式,即中,变

42、量有两种形式,即对象的对象的属性变量属性变量和和内存变量内存变量创建对象时,创建对象时,VisualBasic系统会自动为系统会自动为它创建一组变量即属性变量,并为每一个它创建一组变量即属性变量,并为每一个属性变量设置其默认值。这类变量可供程属性变量设置其默认值。这类变量可供程序员直接使用,如引用其值或赋予新值序员直接使用,如引用其值或赋予新值本章讨论的是本章讨论的是内存变量内存变量,它是用户根据需,它是用户根据需要所声明的。要所声明的。撒癣实泄巳读锁懈膘姑来逐烈褒熬翱涛叶撅纷芥墓耪炽锈要挝尤铡黔讽号第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机

43、基础课程组制作江南大学计算机基础课程组制作 2011 2011版版1变量的声明(显式声明)变量的声明(显式声明)与符号常量一样,要求变量与符号常量一样,要求变量“先声明,后使用先声明,后使用”。声明变量。声明变量就是定义变量名和变量数据类型,从而决定系统为它分配就是定义变量名和变量数据类型,从而决定系统为它分配多少存储单元存放数据。多少存储单元存放数据。(1)在定义变量时指定其数据类型)在定义变量时指定其数据类型格式:格式:Declare变量名变量名As类型名类型名说明:说明:Declare可以是可以是Dim、Public、Private、Static Dim用于在模块的通用部分定义模块级变量

44、以及在用于在模块的通用部分定义模块级变量以及在过程中定义过程级变量过程中定义过程级变量。 Private用于在模块的通用部分定义模块级变量。用于在模块的通用部分定义模块级变量。 Public用于在模块的通用部分定义全局变量。用于在模块的通用部分定义全局变量。 Static用于过程中定义过程级静态变量。用于过程中定义过程级静态变量。鲤纱藏哟冗班虽简辆肪流频撬幻害恳铆意则蚀朽毛露投虽唆声治簧少夹终第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版(1)在定义变量时指定其数据类型)在定义变量

45、时指定其数据类型说明:说明:仅在某个过程中使用的变量,就在该过程中用仅在某个过程中使用的变量,就在该过程中用Dim声明定义,声明定义,若要在多个过程中使用公共变量,则必须在模块的通用部分用若要在多个过程中使用公共变量,则必须在模块的通用部分用Dim、Private、Public声明定义此变量声明定义此变量变量名遵循变量名遵循VisualBasic标识符的命名规则。命名时应尽量有标识符的命名规则。命名时应尽量有意义,做到意义,做到“顾名思义顾名思义”。Sum、Ave_Score、PersonId是合法的变量名是合法的变量名可在变量名前加一个缩写的前缀来表明该变量的数据类型可在变量名前加一个缩写的

46、前缀来表明该变量的数据类型intSum、sngAveScore、strPersonIdAs类型名:类型名可以是基本数据类型和用户定义的类型,类型名:类型名可以是基本数据类型和用户定义的类型,也可以省略,省略后变量为默认数据类型(默认情况下为变体型)也可以省略,省略后变量为默认数据类型(默认情况下为变体型),但变体型占用内存空间较多,执行效率低,但变体型占用内存空间较多,执行效率低PublicaAsInteger定义一个定义一个Integer型全局变量型全局变量aDimd定义一个变体型变量定义一个变体型变量d,等价等价DimdAsVariant幌吩亿肿墅蔫潦吐苔视拘釉访老攻跃跳腰辈京为膏敛柴撕痈

47、亚逢容鞠柑节第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版(1)在定义变量时指定其数据类型)在定义变量时指定其数据类型说明:说明:定义字符串类型的变量:定义字符串类型的变量:Dim字符串变量名字符串变量名AsString变长字符串变量变长字符串变量Dim字符串变量名字符串变量名AsString*字符数字符数定长字符串变量定长字符串变量定长字符串变量的长度,由定长字符串变量的长度,由*号后面的字符数决定,若赋予变量的号后面的字符数决定,若赋予变量的字符数少于指定的字符数,则尾部用空格

48、补足;若超过指定的字字符数少于指定的字符数,则尾部用空格补足;若超过指定的字符数,系统自动截去尾部超出部分的字符。符数,系统自动截去尾部超出部分的字符。DimstrExpress1AsString定义变长字符串变量定义变长字符串变量strExpress1DimstrIdAsString*8定义定长字符串变量定义定长字符串变量strId存放存放8个字个字符符一条声明语句可将多个声明组合起来,在这种格式下,即使几个变一条声明语句可将多个声明组合起来,在这种格式下,即使几个变量的类型一致,也必须分别用量的类型一致,也必须分别用“As类型名类型名”声明各自的类型。声明各自的类型。DimYourName

49、AsString*20,BillsPaidAsCurrencyDimiAsLong,jAsLongPrivatea,b,cAsInteger这里这里a和和b为为Varient型,型,c为为Integer型型渤毙乳加俗魏淮待荚旋掇媒庭九序咏乌雀对辊樟聘慎们排忿事燎体沃励皖第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版(2)用类型说明符定义变量)用类型说明符定义变量对于具有类型说明符的数据类型,采用简单格式定义变量对于具有类型说明符的数据类型,采用简单格式定义变量Declare变量名变

50、量名类型说明符类型说明符说明说明:Declare可以是可以是Dim、Public、Private、Static中中的任意关键字的任意关键字基本类型的类型说明符(基本类型的类型说明符(%、&、!、#、)在表)在表4-2类型说明符列中列举出类型说明符列中列举出变量名与类型说明符之间没有空格变量名与类型说明符之间没有空格Dimi&,J#,K!定义长整型变量定义长整型变量i,双精度变量,双精度变量J,单精度变量,单精度变量K送眠邱验荐鳖吹薯弃胰硕扇洞湃相谩儒票里朽魄界价枷产疤尘低楔呐饺宗第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学

51、计算机基础课程组制作 2011 2011版版2变量的默认声明(隐式声明)变量的默认声明(隐式声明)VisualBasic系统允许用户不作声明而直接使用系统允许用户不作声明而直接使用变量,这样的变量是过程级的变体型变量,只能变量,这样的变量是过程级的变体型变量,只能在过程中使用。在过程中使用。J以下事件过程中的变量以下事件过程中的变量a未经声明定义未经声明定义PrivateSubForm_Click()a=Val(Text1.Text)PrintaEndSubE代码等价于代码等价于PrivateSubForm_Click()DimaAsVarianta=Val(Text1.Text)Printa

52、EndSub溃该氏夸当液吁从预绢剩战醛搅饺江楞技砾炎萍减榴趋做眉舶啄出巫单垮第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版3OptionExplicit强制显式声明强制显式声明VisualBasic系统提供了强制用户对变量进行强制显式声系统提供了强制用户对变量进行强制显式声明的措施:明的措施:在模块代码窗口的通用部分开头直接输入在模块代码窗口的通用部分开头直接输入Option Explicit语句执行执行“工具”菜单的“选项”命令,在,在“编辑器编辑器”选项卡中,选项卡中,选中选中

53、“要求变量声明”复选框,复选框,VisualBasic系统就自系统就自动生成语句动生成语句OptionExplicit,并加到模块的声明部分,并加到模块的声明部分通过对变量进行强制显式声明,凡是发现程序中使用未经通过对变量进行强制显式声明,凡是发现程序中使用未经显式声明的变量,系统将自动显示一个显式声明的变量,系统将自动显示一个“变量未定义变量未定义”错误错误警告信息框。警告信息框。彦冶琼蝶搁郝踏益纳久咋哺眺沸陡列载层着桨岩臣榆帅玻充刷详寿罗熔消第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2

54、011版版4变量默认数据类型的设置变量默认数据类型的设置VB系统允许用户在声明变量前,自行设置或修改变量默系统允许用户在声明变量前,自行设置或修改变量默认的数据类型。认的数据类型。格式:格式:DefType字母范围字母范围说明说明:(1)DefType语句放在模块声明部分的开头,设置指语句放在模块声明部分的开头,设置指定字母范围开头的变量的默认数据类型定字母范围开头的变量的默认数据类型(2)Def是系统关键字,是系统关键字,Type是基本数据类型标志是基本数据类型标志,用以下格式分别表示各基本类型:用以下格式分别表示各基本类型:Byte、Int、Lng、Sng、Dbl、Cur、Str、Bool

55、、Date、Obj、Var。注。注意,在意,在Def和类型标志之间不能有空格和类型标志之间不能有空格(3)字母范围采用)字母范围采用“字母字母-字母字母”的形式表示,其中字的形式表示,其中字母可以是母可以是AZ中的任何一个(大小写均可)。语句中中的任何一个(大小写均可)。语句中说明的字母可以作为该类型的变量名,而且以该字母说明的字母可以作为该类型的变量名,而且以该字母开头的变量名也是那种类型的变量。开头的变量名也是那种类型的变量。介莲之桐炒徘珠京弓炉朵絮霞逼轴糯瞳宅纷傣箕赏闷恤姑料遁羡赵洁沉灯第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程

56、组制作江南大学计算机基础课程组制作 2011 2011版版4变量默认数据类型的设置变量默认数据类型的设置(4)DefType语句不允许重复定义语句不允许重复定义例例1DefSngC-F该语句定义后该语句定义后,CF以及凡是用以及凡是用CF开头命名的变量默认类型是单精度型开头命名的变量默认类型是单精度型DimaAsInteger,b,cAsDouble,d,f定定义义a为整型变量为整型变量,b为变体型变量为变体型变量,c为双精度型变量为双精度型变量,d和和f均为单精度型变量均为单精度型变量例例2:若要将模块中的变量的默认类型全部设置为单精:若要将模块中的变量的默认类型全部设置为单精度型,可以在模

57、块的通用部分按如下方法定义度型,可以在模块的通用部分按如下方法定义DefSngA-ZDimaAsInteger,b,cAsDouble,d,f定义定义a为整型变量为整型变量,c为双精度型变量为双精度型变量,b、d和和f均为均为单精度型变量单精度型变量士蜀逊赞庇也陈榔茂敦亥暴伎奋荷续曳挟贴病麻萝乌咆跌幅吩帝蛔判埠抠第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版5变量的默认的初始值变量的默认的初始值给变量赋值实际就是将数据放入指定变量的内存给变量赋值实际就是将数据放入指定变量的内存空间

58、。使用声明语句定义一个变量后,空间。使用声明语句定义一个变量后,VisualBasic系统会自动给变量赋予一个默认的初始值系统会自动给变量赋予一个默认的初始值(1)数值数值类型变量的初值为类型变量的初值为0(2)字符串字符串型变量的初值为型变量的初值为空串空串(“”)(3)布尔布尔类型变量的初值为类型变量的初值为False(4)日期日期类型变量的初值为类型变量的初值为#1899-12-300:00:00#(5)变体变体类型变量的初值为类型变量的初值为Empty往拣藕试钞滴乔笺县目跪途巢耶勒植框宇烩瘪很姚擂斌侯烫唯掘浮蚊酪狄第4章VisualBasic程序设计基础第4章VisualBasic程序

59、设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版6变量的赋值变量的赋值格式:格式:变量名变量名=表达式表达式Let变量名变量名=表达式表达式作用:将赋值运算符作用:将赋值运算符“=”右侧表达式的值赋给左侧的变量。右侧表达式的值赋给左侧的变量。说明说明:(1)两种格式完全等价,通常)两种格式完全等价,通常采用第1种格式(2)左侧的变量包括属性变量和内存变量)左侧的变量包括属性变量和内存变量(3)表达式包括常量(直接常量和已定义的符号常量)表达式包括常量(直接常量和已定义的符号常量)、变量、对象属性、函数形式以及由它们与运算符的、变量、对象属性、函数形式以及

60、由它们与运算符的组合形式。组合形式。幅翠南扩呸糙班邮谍幼盐良膜然蔗铃镁椅趴捐儡垣扮延唇甘烧蒜捻肝赢雕第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版赋值注意以下问题赋值注意以下问题(1)给变量赋值的语句兼有计算和赋值双重功能,即)给变量赋值的语句兼有计算和赋值双重功能,即先先完成赋值号完成赋值号右侧表达式的计算右侧表达式的计算,然,然后后将计算好的表达式的将计算好的表达式的值值赋给左侧的变量赋给左侧的变量。a=12.4+56.12先计算右侧表达式,后将计算结果赋给左侧变量先计算右侧表

61、达式,后将计算结果赋给左侧变量a(2)在某一个时刻,变量的内存单元只能存放一个数据,)在某一个时刻,变量的内存单元只能存放一个数据,要修改数据则采用赋值的方法实现。注意,变量总是按语要修改数据则采用赋值的方法实现。注意,变量总是按语句执行次序,存放最近一次赋值的数据。句执行次序,存放最近一次赋值的数据。咐粹腥宇痊烦凭昏法盾隆躇劝宙呆庸忙俞僧歪榔幸鞠党攀混盅康喊曹掳体第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版赋值注意以下问题赋值注意以下问题(3)一般要求赋值号两边的数据类型一致,

62、)一般要求赋值号两边的数据类型一致,这样才能完成正确的赋值,即赋值号左侧这样才能完成正确的赋值,即赋值号左侧的数据一般情况下只能接收与它类型相同的数据一般情况下只能接收与它类型相同的表达式的值。当赋值时表达式的值的类的表达式的值。当赋值时表达式的值的类型并不完全和变量类型相同时,系统根据型并不完全和变量类型相同时,系统根据自动转换的原则将值转换成与变量相同的自动转换的原则将值转换成与变量相同的类型后赋值,一旦自动转换失败,则赋值类型后赋值,一旦自动转换失败,则赋值也失败,系统出错也失败,系统出错棍滔镭搐酵甫氛黔遍膏签稽梳镣勃垢拴皇宪嚣几孪焕贬蛆柔郑弹慑彦遁指第4章VisualBasic程序设计

63、基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版赋值注意以下问题赋值注意以下问题(4)Variant数据类型可在不同场合代表不同数数据类型可在不同场合代表不同数据类型。当指定变量为据类型。当指定变量为Variant变量时,变量时,VisualBasic会自动完成各种必要的类型转换。会自动完成各种必要的类型转换。(5)区分赋值号和关系运算符中的判等号。在)区分赋值号和关系运算符中的判等号。在VisualBasic中,系统会根据等号所处的位置来中,系统会根据等号所处的位置来区分是赋值号还是判等号:仅在赋值语句最左端区分是赋

64、值号还是判等号:仅在赋值语句最左端的等号是赋值号,其余的均为判等号。判等号所的等号是赋值号,其余的均为判等号。判等号所在的表达式一般不能单独以语句的形式出现,而在的表达式一般不能单独以语句的形式出现,而赋值号则是以赋值语句形式出现;赋值号两边的赋值号则是以赋值语句形式出现;赋值号两边的数据是不能随便相互交换的,否则可能运行出错数据是不能随便相互交换的,否则可能运行出错或产生逻辑上的错误,而判等号两边的数据是可或产生逻辑上的错误,而判等号两边的数据是可以相互交换的。以相互交换的。裹京画狡赘玖呻丝舒迎谜秽汁笑笑相淮壕柱捞谴蹄孰鸟毙橙物吾蒜诞技趋第4章VisualBasic程序设计基础第4章Visu

65、alBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.4运算符和表达式运算符和表达式碰到具体问题时,不光是要表示待处理的数据,碰到具体问题时,不光是要表示待处理的数据,而且还要运用有效的方案处理数据、解决问题。而且还要运用有效的方案处理数据、解决问题。例如,已知三边,求三角形的面积。与数学中一例如,已知三边,求三角形的面积。与数学中一样,计算机语言中,对数据的加工处理称为运算样,计算机语言中,对数据的加工处理称为运算(即操作);被运算的对象,即数据,称为操作(即操作);被运算的对象,即数据,称为操作数(或运算量);用运算符或操作符来描述最

66、基数(或运算量);用运算符或操作符来描述最基本的运算形式。因此合理地运用运算符描述对哪本的运算形式。因此合理地运用运算符描述对哪些数据、以何种顺序、进行什么样的操作,是本些数据、以何种顺序、进行什么样的操作,是本节学习的关键。节学习的关键。VisualBasic中定义了丰富的运算符,包括算术中定义了丰富的运算符,包括算术运算符、字符串运算符、关系运算符和逻辑运算运算符、字符串运算符、关系运算符和逻辑运算符和对应的表达式。符和对应的表达式。冕采拍俱缴偶易隘鳃凹琢允轮群泻到汝庚通监得晨继熏她拿患斋污做唯应第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机

67、基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.4.1算术运算符和表达式算术运算符和表达式1算术运算符算术运算符+加加-减减(负号负号)*乘乘/除除整除整除(取商的整数部分、要求操作数为整型数取商的整数部分、要求操作数为整型数据据)Mod取余运算取余运算(要求操作数为整型数据要求操作数为整型数据)乘方运算符乘方运算符&字符串连接运算字符串连接运算欢失劲烙衫第回谍拖穷烷熬血斧绰鸳拢报乡梧掐旺犊驯摸腹莽家嘎垢薪梁第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.4

68、.1算术运算符算术运算符幂运算幂运算用来计算乘方和方根用来计算乘方和方根525的平方的平方535的立方,即的立方,即5*5*5,结果为,结果为1255-35的立方的倒数,即的立方的倒数,即1/125,结果为,结果为0.008250.525的平方根,结果为的平方根,结果为5125(1/3) 125的立方根的立方根注意,由于幂运算的运算优先级最高,当指数部分是一个注意,由于幂运算的运算优先级最高,当指数部分是一个表达式,必须加上括号,否则上述表达式表达式,必须加上括号,否则上述表达式1251/3,将,将先完成先完成1251运算,后进行除运算,后进行除3运算,即改变了原运算顺运算,即改变了原运算顺序

69、。序。括蹈痞服亡鸿抱兑氦色缔破绦疑男庸扑抹坟壬系呢姓卯枫族示甸溺钮烽露第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.4.1算术运算符算术运算符整除和取余整除和取余整除(整除()运算是整数之间的除运算,其结果是)运算是整数之间的除运算,其结果是商的整数商的整数部分部分(即普通除运算结果的整数部分),所以又称为商取(即普通除运算结果的整数部分),所以又称为商取整除法整除法858整除整除5,结果为,结果为1取余(取余(Mod)运算是整数之间的取余运算,结果为第)运算是整数之间的取余运

70、算,结果为第1个个操作数整除第操作数整除第2个操作数后所得的个操作数后所得的余数部分余数部分。取余运算结。取余运算结果的正负号始终与第一个操作数的符号相同果的正负号始终与第一个操作数的符号相同8Mod5结果为结果为38Mod5结果为结果为3-8Mod5结果为结果为-3-8Mod5结果为结果为-3炳纷农洁来鉴迭前板鬼奴歉借粕仓梗渭祈觉仟窘咎撞梢赌碧霓眺历弘啮绅第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版算术运算符注意问题算术运算符注意问题(1)算术运算符要求参与运算的操作数是数值型

71、,运算)算术运算符要求参与运算的操作数是数值型,运算结果也是数值型;若操作数是表示数值的字符串或逻辑型,结果也是数值型;若操作数是表示数值的字符串或逻辑型,则按自动转换的原则转换成数值类型后参与运算。则按自动转换的原则转换成数值类型后参与运算。2*“3.14”*3数值字符串数值字符串3.14“转换为转换为3.14参与算术运算,结果是参与算术运算,结果是18.84“3D2”+205数值字符串数值字符串3D2“转换为转换为300.0参与算术运算,结果是参与算术运算,结果是315.0False+10True逻辑值逻辑值False转换为转换为0、True转换为转换为-1参与算术运算,参与算术运算,结果

72、是结果是11纸佛篱犀诞碌苇涵搐亨砰莫禽狼伸扑搜免半雌砌侥肺逗爽饰声汲惜洪九吕第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版算术运算符注意问题算术运算符注意问题(2)除)除-(取相反数)为单目运算符外,其余的算术运算(取相反数)为单目运算符外,其余的算术运算符均为双目运算符。符均为双目运算符。(3)在算术运算中若操作数的数据类型相同,则运算结)在算术运算中若操作数的数据类型相同,则运算结果的数据类型也为该类型;若数据类型不一致,具有不同果的数据类型也为该类型;若数据类型不一致,具有不

73、同的数据精度,则的数据精度,则VisualBasic根据精度大小(数值型数据根据精度大小(数值型数据按精度大小从小到大排序为按精度大小从小到大排序为IntegerLongSingleDoubleCurrency),将精度低),将精度低的数据转换成精度高的数据类型后进行运算,规定运算结的数据转换成精度高的数据类型后进行运算,规定运算结果的数据类型以精度高的数据类型为准果的数据类型以精度高的数据类型为准256+890加号两侧操作数均为加号两侧操作数均为Integer型,运算结型,运算结果也是果也是Integer型型483*12.3!乘号左侧操作数为乘号左侧操作数为Integer型,右侧为型,右侧为

74、Single型,运算结果以精度高的型,运算结果以精度高的Single型为准型为准啤欧烧蠢阵篡连元颅桃旦绣讣愈爬辈窿胁狰僧袄崎厌梧动级所肝疙绷石县第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版算术运算符特例算术运算符特例当当Long型数据与型数据与Single型数据运算时,结果为型数据运算时,结果为Double型数据型数据除法和幂运算的结果总是除法和幂运算的结果总是Double型,与操作数类型无型,与操作数类型无关关整除(整除()和取余()和取余(Mod)运算时,若操作数为实数,)运

75、算时,若操作数为实数,则先对其进行四舍六入五成双的取整,然后完成整除或取则先对其进行四舍六入五成双的取整,然后完成整除或取余,结果仍为整型或长整型余,结果仍为整型或长整型43幂运算的结果是幂运算的结果是Double型型8.55.56先将操作数先将操作数8.5和和5.56进行四舍进行四舍六入五成双的取整,分别得到六入五成双的取整,分别得到8和和6,整除结果是,整除结果是18.5Mod5.56先将操作数先将操作数8.5和和5.56进行取整,进行取整,分别得到分别得到8和和6,取余结果是,取余结果是2痒匪间对弥碾牛友诺吓膘男峡赚蛹民披征木臼卒瞳寥毡匝惺厩皮类数亭蚀第4章VisualBasic程序设计

76、基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版2算术表达式算术表达式由算术运算符、圆括号、函数、常量和变量组成的式子称由算术运算符、圆括号、函数、常量和变量组成的式子称为算术表达式,算术表达式的值是数值型的。为算术表达式,算术表达式的值是数值型的。0.5*g*t2+v0*t(x%Mod10)*10+x%10算术表达式的值是有类型的,所以也存在着值的溢出(超算术表达式的值是有类型的,所以也存在着值的溢出(超出取值范围)现象,运算时要注意。出取值范围)现象,运算时要注意。235+32760出错出错“溢出溢出”,表达式的值

77、也是,表达式的值也是Integer型,型,32995超出超出了整型数据的范围了整型数据的范围提醒:在合理选择数据类型描述数据时,不仅要从描述数提醒:在合理选择数据类型描述数据时,不仅要从描述数据目前的值考虑,还要从它参与的运算角度、运算结果等据目前的值考虑,还要从它参与的运算角度、运算结果等方面考虑方面考虑侈怪滁暗伊篮才裁宽改楼矛栗妙赡贴匆遍睹躇秘牵凹郑冉洒鸦亭番冻貌俏第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版3日期型表达式日期型表达式日期型数据是一种特殊的数值型数据,它们之间

78、只能进行日期型数据是一种特殊的数值型数据,它们之间只能进行加(加(+)、减()、减()算术运算。日期型表达式由算术运算)算术运算。日期型表达式由算术运算符符“+”、“”、算术表达式、日期型常量和变量、函数组、算术表达式、日期型常量和变量、函数组成。一般有以下成。一般有以下3种情况:种情况:(1)两个日期型数据进行减法运算,结果是一个数值)两个日期型数据进行减法运算,结果是一个数值型数据(两个日期相差的天数)。型数据(两个日期相差的天数)。#05/09/2008#-#05/01/2008#表达式值为表达式值为8(2)一个日期型数据与一数值型数据进行加法运算,)一个日期型数据与一数值型数据进行加法

79、运算,结果是一个日期型数据。结果是一个日期型数据。#05/01/2008#+8值为日期型数据值为日期型数据#05/09/2008#(3)一个日期型数据与一数值型数据进行减法运算,)一个日期型数据与一数值型数据进行减法运算,结果是一个日期型数据。结果是一个日期型数据。#05/09/2008#-8表达式值为日期型数据表达式值为日期型数据#05/01/2008#商对炯发凸殷滤传胀咐坞错淆钎敷戮蔼勒慈示簇纷礼清唉骸址田韭文坍旭第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.4.2字符串运

80、算符和字符串表达式字符串运算符和字符串表达式VisualBasic中的字符串运算符主要用来将两个字符串连中的字符串运算符主要用来将两个字符串连接成一个字符串,接成一个字符串,VisualBasic提供了两个字符串的连接提供了两个字符串的连接符,即符,即“&”和和“+”。“&”和和“+”是双目运算符,用来将两个字符串首尾连接的,是双目运算符,用来将两个字符串首尾连接的,连接结果仍为字符串类型。优先级相同,但低于算术运算连接结果仍为字符串类型。优先级相同,但低于算术运算符。符。江南大学江南大学&信息工程学院信息工程学院连接结果为连接结果为江南大学信息工程学院江南大学信息工程学院江南大学江南大学+信

81、息工程学院信息工程学院连接结果为连接结果为江南大学信息工程学院江南大学信息工程学院字符串变量字符串变量a中存放的内容是中存放的内容是&a若若a中的内容为中的内容为VB,则连接结果为,则连接结果为字符串变量字符串变量a中中存放的内容是存放的内容是VB险颐闭孜絮共纫励莉碑韧介恐搁驶塞慰橡壮怂茶阀耙割疹诛脆壕供姿径延第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版注意问题注意问题(1)使用运算符)使用运算符“&”时,操作数与时,操作数与“&”之间必须加上一个之间必须加上一个空格分隔。因为符

82、号空格分隔。因为符号“&”还是长整型数据的类型定义符,还是长整型数据的类型定义符,若操作数与符号若操作数与符号“&”连接在一起,连接在一起,VB系统优先将它作为系统优先将它作为长整型数据类型符处理,继而就会出现语法错误长整型数据类型符处理,继而就会出现语法错误(2)“+”与与“&”运算符在使用时的区别如下:运算符在使用时的区别如下:“&”运算在连接运算前,系统自动先将两边的非字运算在连接运算前,系统自动先将两边的非字符串类型数据转换成字符串型数据,然后再进行连接符串类型数据转换成字符串型数据,然后再进行连接操作操作运算符运算符“+”两边仅当都是字符串类型数据时,才进两边仅当都是字符串类型数据时

83、,才进行字符串的连接操作;否则系统将运算符行字符串的连接操作;否则系统将运算符“+”用作算术用作算术运算符,进行求和运算:若其中一个操作数是数值型运算符,进行求和运算:若其中一个操作数是数值型或逻辑型,另一个操作数是数字字符串或逻辑型,则或逻辑型,另一个操作数是数字字符串或逻辑型,则系统会自动将数字字符串和逻辑型转换为数值型,然系统会自动将数字字符串和逻辑型转换为数值型,然后进行算术求和运算;否则系统由于无法自动将操作后进行算术求和运算;否则系统由于无法自动将操作数转换为数值型,则出现数转换为数值型,则出现“类型不匹配类型不匹配”的出错信息的出错信息缓阑驼粘纷仇缓务侥叙缄血餐撒勾搭暂湘殆衬雨捎

84、侨柄棘迭馈剐辆负眨铸第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版“+”与与“&”运算符例运算符例1VB&6连接结果为:连接结果为:VB6125.6&25连接结果为:连接结果为:125.625True&125.6连接结果为:连接结果为:True125.6VB+6连接结果为:连接结果为:VB6VB+6出错出错“类型不匹配类型不匹配”125.6+25连接结果为:连接结果为:125.625125.6+25求和结果为:求和结果为:150.6125.6+25求和结果为:求和结果为:150.6

85、125.6+25求和结果为:求和结果为:150.6True+125.6连接结果为:连接结果为:True125.6True+125.6求和结果为:求和结果为:124.6True+125.6求和结果为:求和结果为:124.6True+125.6出错出错“类型不匹配类型不匹配”鹿暂茫颓皇忠到霓吝仟铂厉篮检添琉修部门禄夸他变粳现押硫粤选沟跳送第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版“+”与与“&”运算符例运算符例2DimiAsInteger,JAsString,KAsString,L

86、AsIntegerJ=Program:i=12:K=12:L=24Printi+K结果为结果为24PrintJ+K结果为结果为program12PrintJ+I出错:类型不匹配出错:类型不匹配Printi+L&J先进行先进行i与与L的求和运算,然后的求和运算,然后与与J完成字符连接运算,结果为完成字符连接运算,结果为36ProgramPrinti+L&K+L先进行先进行i与与L、K与与L的求和运算,的求和运算,然后完成字符连接运算,结果为然后完成字符连接运算,结果为3636Printi+L&J+LJ与与L进行求和运算时出错:类进行求和运算时出错:类型不匹配型不匹配撰涛钩顶方搪了逾圆爱装历弯梦陡

87、铺钡主绑迂狸抄嫡耘涤加栽妙嚏脱锑御第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.4.3关系运算符和关系表达式关系运算符和关系表达式关系运算用于对两个数据进行比较,关系运算用于对两个数据进行比较,比较结果为逻辑值比较结果为逻辑值“True”或或“False”关系运算符关系运算符小于小于大于大于=大于等于大于等于不等于不等于=等于等于Like字符串匹配字符串匹配Is用来比较两个对象的引用变量用来比较两个对象的引用变量凸降名耍忌统澈胁些沮眨磐彤腹德渔迎眶贯园一刮屑蜕罩疼己走恬昧腿赠第

88、4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.4.3关系运算符和关系表达式关系运算符和关系表达式关系运算的规则如下关系运算的规则如下(1)所有关系运算符的优先级相同,但低于算术和字符所有关系运算符的优先级相同,但低于算术和字符串运算符串运算符(2)两个数值型数据按大小比较两个数值型数据按大小比较(3)日期型数据按日期的早晚比较,晚日期大于早日期日期型数据按日期的早晚比较,晚日期大于早日期(4)两个字符型数据两个字符型数据按按ASCIIASCII值值比较:比较:从从第一个字符第一个

89、字符开始开始依次比较对应位置字符依次比较对应位置字符的的ASCIIASCII码值,直到遇到第一对码值,直到遇到第一对ASCIIASCII码不相等的字符为止码不相等的字符为止,ASCII码码值值大的字符串大。大的字符串大。若两字符串相等,则字符串中的每个字符都相等且字若两字符串相等,则字符串中的每个字符都相等且字符串长度也相等符串长度也相等;汉字字符大于西文字符;汉字字符大于西文字符“0”“9”“A”“Z”“a”“z”486597汉字汉字5790122毗见吟脂凡芜笑噬狸颊筛鳞滇纺氛郎炕疹族疲蓉连睦赞乏整戳患凄胁椭哲第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江

90、南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.4.3关系运算符和关系表达式关系运算符和关系表达式关系运算的规则如下关系运算的规则如下(5)数值型数据与可转换为数值型的数据比较,按数值数值型数据与可转换为数值型的数据比较,按数值大小比较。数值型数据不能与无法转换为数值型的数大小比较。数值型数据不能与无法转换为数值型的数据比较,系统出错据比较,系统出错776.0按数值比较,结果为按数值比较,结果为True-3False按数值比较,结果为按数值比较,结果为True77“ABC”无法比较,系统出错无法比较,系统出错“类类型不匹配型不匹配”(6)数学中判断数学中判断x

91、是否在是否在a,b区间内,习惯上写成区间内,习惯上写成axb,但在,但在VisualBasic中不能写成中不能写成a=x=b(该(该表达式的含义:先判断表达式的含义:先判断a是否小于等于是否小于等于x,然后再将判,然后再将判断的逻辑结果与断的逻辑结果与b进行比较),而应采用即将介绍的逻进行比较),而应采用即将介绍的逻辑辑“And”与运算描述:与运算描述:a=xAndx=b慰谎达淋富咋薪挫弦翻人激宗壕帜互熟境迸怕染晤糠霉脾看快熬肮磐骗孙第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4

92、.4.3关系运算符和关系表达式关系运算符和关系表达式关系运算的规则如下关系运算的规则如下(7)Like运算符用来比较字符串表达式和运算符用来比较字符串表达式和SQL表达式中的样式,与表达式中的样式,与通配符通配符“?”、“*”、“#”、字符列表字符列表、!字符列表字符列表结合使用,主要结合使用,主要用于数据库模糊查询。其中:用于数据库模糊查询。其中:“?”表示任何单一字符表示任何单一字符“*”表示零个或多个字符表示零个或多个字符“#”表示任何一个数字(表示任何一个数字(09)字符列表字符列表表示字符列表中的任何单一字符表示字符列表中的任何单一字符!字符列表字符列表表示不在字符列表中的任何单一字

93、符表示不在字符列表中的任何单一字符表示姓名表示姓名StrName变量中姓周的教师,变量中姓周的教师,StrNameLike“周周*”表示姓名表示姓名StrName变量中不出现周字的教师,变量中不出现周字的教师,StrNameLike“!周周*(8)Is运算符用来比较两个对象的引用变量,主要用于对象操作,运算符用来比较两个对象的引用变量,主要用于对象操作,本书不做介绍。此外,本书不做介绍。此外,Is运算符还在运算符还在SelectCase语句中使用(见语句中使用(见第第7章)。章)。遵竣主纹纂慕滔社丁网专蜀悉逢谣衔慎严烟嫁湖冈讳刃汝贾挎仰挂棍听批第4章VisualBasic程序设计基础第4章Vi

94、sualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.4.4逻辑运算符和逻辑表达式逻辑运算符和逻辑表达式逻辑运算是对逻辑值进行的运算逻辑运算是对逻辑值进行的运算,结果是逻辑型值结果是逻辑型值True/False逻辑运算符逻辑运算符Not逻辑非逻辑非And逻辑与逻辑与Or逻辑或逻辑或Xor逻辑异或逻辑异或Eqv等价等价Imp蕴含蕴含逻辑运算符的优先次序:逻辑运算符的优先次序:NotAndOrXorEqrImp雹赎虱糟拴塔要僻泪定痛呆谗壕蛊蘸鹿暮憋盐淤蛹柴杯职盲型革躁嚏迂媒第4章VisualBasic程序设计基础第4章VisualBasi

95、c程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版逻辑运算符的运算规则和优先级逻辑运算符的运算规则和优先级镀炮燃柏亦翻巾械蝇睛贼慢策竞旦燃底颠忌胚钓樊酣莫治议谷亢照迄甄妈第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版逻辑运算符说明逻辑运算符说明(1)逻辑运算符除)逻辑运算符除Not运算是单目运算外,其余都是双运算是单目运算外,其余都是双目运算目运算(2)逻辑运算符两侧的操作数是逻辑型数据()逻辑运算符两侧的操作数是逻辑型数据(True或者

96、或者False),则运算结果也是逻辑型值),则运算结果也是逻辑型值(3)逻辑运算符的运算优先级)逻辑运算符的运算优先级低于低于算术、字符、关系运算术、字符、关系运算符算符若若a=6,r=1,x=5,b=True,则逻辑表达式:,则逻辑表达式: x 2 Or b先进行先进行x= 2 * 3.14159 * r And x 5 Or Not b先进行先进行2*3.14159*r算术表达式的计算,然后再进行算术表达式的计算,然后再进行关系运算,最后再进行关系运算,最后再进行Not、And、Or逻辑运算,运逻辑运算,运算结果为算结果为False出扮税允轻轧叹听豆驾革层否嚏淤团寥猜茶离巧吩闷栖阎厢令欧壹

97、祁怜讫第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版逻辑运算符说明逻辑运算符说明(4)VB中最常用的逻辑运算符是中最常用的逻辑运算符是Not、And和和Or,经常用于条件和,经常用于条件和循环语句,构造比较复杂的表达式进行逻辑判断。由循环语句,构造比较复杂的表达式进行逻辑判断。由And连接的条件连接的条件表达式,必须表达式,必须全部满足为真全部满足为真,整个表达式才为,整个表达式才为真真;Or连接的条件表连接的条件表达式,只要达式,只要满足其中之一为真满足其中之一为真,整个表达式即

98、为,整个表达式即为真真;学校推选三好学生,必须同时满足德育(学校推选三好学生,必须同时满足德育(D)、智育()、智育(Z)、体育)、体育(T)名次均在班级前三名)名次均在班级前三名D=3AndZ=3AndT=3此处分别用此处分别用D、Z、T表示德表示德育、智育、体育的名次,必须使用育、智育、体育的名次,必须使用And连接这些条件连接这些条件D=3OrZ=3OrT=3如果用如果用Or连接这些条件,则表连接这些条件,则表示学校推选三好学生,只需满足德育、智育和体育其中之一的名示学校推选三好学生,只需满足德育、智育和体育其中之一的名次在班级前三名,显然不符合描述要求。次在班级前三名,显然不符合描述要

99、求。整型变量整型变量x是是5和和7的倍数的倍数xMod5=0AndxMod7=0或关系表达式或关系表达式xMod35=0忠萍孤云蜒搽尚戈花越啸折翌拈坟救掖屈押肯誓痒舞橇畴怕汗饿区廊噎父第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版逻辑运算符说明逻辑运算符说明(5)当逻辑运算符某侧的操作数是数值型数据时,则将)当逻辑运算符某侧的操作数是数值型数据时,则将逻辑运算符两侧的数据都转换为数值型数据,并以逻辑运算符两侧的数据都转换为数值型数据,并以数值的数值的二进制补码形式二进制补码形式进行

100、逐位逻辑运算,运算结果为数值型。进行逐位逻辑运算,运算结果为数值型。Not9=Not0000000000001001=1111111111110110=-1013And71,运算过程如下:,运算过程如下:所以,逻辑表达式所以,逻辑表达式13And71的值为的值为5。盾账苑闸巳墒福椰汞似猖顿贬况饮梢顿维挟琉已曙蠕陶臣枫令繁吕蓝癣舵第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版逻辑运算符说明逻辑运算符说明(5)当逻辑运算符某侧的操作数是数值型数据时,则将)当逻辑运算符某侧的操作数是数值

101、型数据时,则将逻辑运算符两侧的数据都转换为数值型数据,并以逻辑运算符两侧的数据都转换为数值型数据,并以数值的数值的二进制补码形式二进制补码形式进行逐位逻辑运算,运算结果为数值型。进行逐位逻辑运算,运算结果为数值型。Not9=Not0000000000001001=1111111111110110=-10-13And71,运算过程如下:,运算过程如下:所以,逻辑表达式所以,逻辑表达式-13And71的值为的值为-9。汐毁哄哗甜庞嚼捉诛颜哮沉雷氏痛嘴诀惭联涣癌字晦循京骸焚逐傍羔察拘第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计

102、算机基础课程组制作 2011 2011版版4.4.5表达式的构造与计算表达式的构造与计算1表达式的组成表达式的组成由运算符、圆括号、常量、变量和由运算符、圆括号、常量、变量和函数按一定的规则组成的一个有意义的式子就是表达式函数按一定的规则组成的一个有意义的式子就是表达式2表达式的书写规则表达式的书写规则(1)表达式中所有运算符和操作数必须并排书写,不)表达式中所有运算符和操作数必须并排书写,不能出现上下标和数学中的分数线。能出现上下标和数学中的分数线。(2)在一般情况下,不允许两个运算符相连,应当用)在一般情况下,不允许两个运算符相连,应当用括号隔开。括号隔开。(3)注意运算符的优先级,为保持

103、运算顺序,)注意运算符的优先级,为保持运算顺序,VisualBasic使用圆括号使用圆括号(),但不能使用方括号,但不能使用方括号或花括号或花括号。若需要多层括号时,则括号必须成对出现。若需要多层括号时,则括号必须成对出现。(4)VisualBasic中乘号(中乘号(*)不能省略,也不能用)不能省略,也不能用“”代替。代替。(5)幂运算符表示自乘)幂运算符表示自乘厌非惶因盼漆障叉鸵递正疏值醚于淮臀唾檬音概骡惫右姨沼抒岂叭璃至柱第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版VB中数学

104、式的描述中数学式的描述数学式数学式对应于对应于VB表达式表达式X1+X22Y3X1+X2*X2Y3(a+b)/(a-b)(p*(p-a)*(p-b)*(p-c)(1/2)bcbcxy0xyAndy0噶痔退航烁涝狞蹄键缮舒牛贼千瓣泽酪冕忌先篙仪弧饯隋威逃煌续篷页霍第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.4.5表达式的构造与计算表达式的构造与计算3表达式的计算表达式的计算(1)表达式值的类型)表达式值的类型表达式通过运算后有一个结果,运表达式通过运算后有一个结果,运算结果的类

105、型由数据和运算符共同决定。算结果的类型由数据和运算符共同决定。(2)优先级比较。)优先级比较。同类运算符的优先级。前面介绍各种运算符时,指出了各类运同类运算符的优先级。前面介绍各种运算符时,指出了各类运算符中运算符的优先级,优先级为算符中运算符的优先级,优先级为1的运算比优先级的运算比优先级2的优先级高,的优先级高,依次类推;相同优先级的,按从左至右的出现顺序执行运算。在依次类推;相同优先级的,按从左至右的出现顺序执行运算。在运算时,需要严格遵守优先顺序执行运算。运算时,需要严格遵守优先顺序执行运算。不同类运算符的优先级。在各种不同类型的运算中,优先顺序不同类运算符的优先级。在各种不同类型的运

106、算中,优先顺序为算术运算为算术运算字符运算字符运算关系运算关系运算逻辑运算逻辑运算圆括号可以改变优先顺序或使表达式更清晰。当表达式中含有括圆括号可以改变优先顺序或使表达式更清晰。当表达式中含有括号时,总是先执行括号内表达式的值;对于多重括号,总是由内号时,总是先执行括号内表达式的值;对于多重括号,总是由内到外。到外。皆叠盲矿范耿噎亡普竞摈遏孩优峪啤军虫永胚津型脊冗奋唤眩仪扛屯怠追第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.5常用内部函数常用内部函数函数调用格式:函数调用格式:

107、函数名函数名(参数列表参数列表)有参函数有参函数函数名函数名无参函数无参函数说明:说明:(1)使用时应准确拼写函数名,调用时的)使用时应准确拼写函数名,调用时的实际参数实际参数要要和函数格式中和函数格式中形式参数形式参数的的个数、数据类型、含义和取个数、数据类型、含义和取值范围值范围保持一致。保持一致。(2)函数只能出现在表达式中,一般不能以单独语句)函数只能出现在表达式中,一般不能以单独语句形式出现。形式出现。(3)注意接收函数的返回值。)注意接收函数的返回值。(4)函数的运算优先级高于算术运算符。)函数的运算优先级高于算术运算符。识术猖钡般瞻粹渠赖饭晒房脆拒千目又楔氢炔权滑翅秽疏缠绣惹崩夏

108、善鳃第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.5.1数学函数数学函数说明:说明:(1)三角函数的参数三角函数的参数x均是以均是以弧度弧度为单位的,如果已为单位的,如果已知角度知角度x,可以按,可以按x*3.1415926/180将将x转换成弧度,转换成弧度,然后求其三角函数。然后求其三角函数。(2)VisualBasic中没有提供的函数,可以用数学方中没有提供的函数,可以用数学方法求得。法求得。VisualBasic中没有余切函数,求中没有余切函数,求x弧度的余切值弧度的余

109、切值可以表示为可以表示为1/Tan(x)或或Cos(x)/Sin(x)。VisualBasic中没有专门的对数函数中没有专门的对数函数Logxy,必须,必须采用换底公式采用换底公式Log(y)/Log(x)表示。表示。(3)使用数学函数应符合数学规定,如)使用数学函数应符合数学规定,如Sqr(x)中参数中参数x不能是负数不能是负数汾辉酉裤取烧枝股酷诛自寞张惫苑拼吕酝黎媳韭届肠笼陈苞陵舟抄切颅厦第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版例题例题4-1求角度为求角度为30度的各个三

110、角函数值。运行结果见图度的各个三角函数值。运行结果见图OptionExplicitConstPI=3.1415926PrivateSubForm_Click()DimxAsDoublex=30*PI/180Print角度为角度为30度的三角函数值如下度的三角函数值如下:PrintSin(30)=&Sin(x)PrintCos(30)=&Cos(x)PrintTan(30)=&Tan(x)PrintCTan(30)=&1/Tan(x)EndSub率齿店佰躁螺逛掺枝墩官梧拷亢逗潭汽捷蛛丫侥厕季灸测破侄雕巳吼犁萝第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学

111、计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版VBVB中数学式表示的中数学式表示的注意点注意点乘号不能省乘号不能省aba*b分子分母型分子分母型幂运算幂运算a3a3exExp(x)自然对数自然对数Lnxlog(x) 不允许不允许不允许不允许使用使用,只能使用,只能使用()()保证运算优先级保证运算优先级特殊符号的表达特殊符号的表达ConstPI=3.1415926DimBataAsSingle度度angle到弧度的转换到弧度的转换angle*PI/180函数的优先级高于函数的优先级高于幂运算幂运算?lg13?log25换底公式换底公式Log(13)/log(10)Lo

112、g(5)/log(2)卜郴旧寨蛤格奴鲸轧柑炭豪严钟毗载匀千供败闻珐盎贾脖云毗枣昼馏屡鹊第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版(-b+sqr(b*b-4*a*c)/(2*a)Log(Exp(x*y)+Abs(AtnAtn(z)+coscos(x)3)例例周宅募扬子丝当荚放妹承兵尿次森赌晰得颈茶僵傈甲顷栗栓怨邓恰容仿否第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版A

113、sc与与Chr函数函数Asc与与Chr函数为一对互反函数。若参数函数为一对互反函数。若参数x是由多个字符是由多个字符组成,则组成,则Asc(x)仅返回仅返回x中中第一个字符第一个字符的的Ascii码值。码值。表达式表达式Asc(Basic)的值是的值是B的的Ascii码值码值66。常常使用常常使用Chr(Asc(x)+d)形式返回形式返回Ascii码值与码值与x首字首字符相差符相差d的字母字符。的字母字符。表达式表达式Chr(Asc(B)+1)的值是字符的值是字符B的下一个字的下一个字母字符母字符C。常常通过使用常常通过使用Chr函数得到常用的控制字符函数得到常用的控制字符Chr(13)回车符

114、回车符Chr(13)+Chr(10)回车换行符回车换行符Chr(7)响铃响铃BeepChr(8)退格符退格符澜撇柄贰戒炳敞腮壕茬俩卵锈狭魄泣栽掐捌吞酸统汞狙窟倔皇谰绚苛娥流第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版Str、CStr和和Val函数函数Str(x)将数值型数据将数值型数据x转换为字符串,转换后字符串的第转换为字符串,转换后字符串的第一个字符是符号位(正数用空格表示)一个字符是符号位(正数用空格表示)CStr(x)函数将函数将x转换为字符串,转换后的字符串不保留正转换

115、为字符串,转换后的字符串不保留正数的符号位。数的符号位。Str(-123.56)函数值为字符串函数值为字符串“-123.56”Str(123.56)函数值为字符串函数值为字符串“123.56”,第一个字符为空格,第一个字符为空格即正数的符号位即正数的符号位CStr(1122.33)函数值为字符串函数值为字符串“123.56”,不保留正数的符号,不保留正数的符号位位Val(x)函数是将数字字符串转换为对应的数值,在遇到第函数是将数字字符串转换为对应的数值,在遇到第一个数值类型规定字符外的字符时转换停止,返回停止前一个数值类型规定字符外的字符时转换停止,返回停止前合法的数值字符串所对应的数值,即若

116、需转换的字符串的合法的数值字符串所对应的数值,即若需转换的字符串的第一个字符不是数字,则返回结果第一个字符不是数字,则返回结果0。Val(“-123.5AB67”)函数值为函数值为-123.5Val(“ABC123.567”)函数值为函数值为0Val(123.567D2)函数值为函数值为12356.7单吃嫩泽瀑辫交贿胶瞩扁颂倒洱扒火诡北察拌涡尖哭衷弯遵佑铀聚栏馒询第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版Fix、Int取整函数取整函数Fix(x)函数为截尾取整,即去掉数值小数部

117、函数为截尾取整,即去掉数值小数部分后的数分后的数Int(x)函数仅取不大于函数仅取不大于x的最大整数的最大整数当当x=0时两者功能相同,而时两者功能相同,而x0时,时,Int(x)总是小于总是小于Fix(x),与,与Fix(x)-1相同相同Fix(2.5)函数值为函数值为2Fix(-2.5)函数值为函数值为-2Int(2.5)函数值为函数值为2Int(-2.5)函数值为函数值为-3汲囊公怯捍涤魁餐悔咕琅帚召惺胯碱石砍凳架刺舌坷材迄诛擞亡轨栖集敌第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 20

118、11版版Round、CInt、Clng取整函数取整函数Round(x)、CInt(x)和和Clng(x)为为“四舍六入五成双四舍六入五成双”的取整的取整函数,即当小数部分函数,即当小数部分0.5,则采用向整数部分进,则采用向整数部分进1取整;当小数部分取整;当小数部分=0.5,则采用往数据本身最接近的偶数取整,则采用往数据本身最接近的偶数取整与与Round函数不同,函数不同,CInt和和Clng函数还起到将数据的类函数还起到将数据的类型分别转换为型分别转换为Integer和和Long的作用。的作用。Round(2.5)函数值为函数值为2Round(1.5)?Round(-2.5) 函数值为函数

119、值为-2Round(-1.5)?Clng(2.5)函数值为函数值为2Clng(-2.5)函数值为函数值为-2CInt(2.57)函数值为函数值为3Clng(-2.57)函数值为函数值为-3钥臃求今悔氟图节派铀刑但牢掷裔晋籍围骂相醛浓届而名丑衡松烽勋轧鬃第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版Round和和Int函数函数Round(x,n)保留数据保留数据x指定的指定的n位小数位小数利用函数利用函数Int(x)可以实现数学上要求的四舍可以实现数学上要求的四舍五入保留数据五入保留

120、数据x指定的指定的n位小数位小数格式:格式:Int(x*10n+0.5)/(10n)环少殴朵傻雁乍钨迹姻撬僳晾余总污带溪吨赖心功引墨岸硝胆帮脾党疚帖第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版例题例题4-2根据用户输入的一个带有小数的实数,要求拆分显示该数根据用户输入的一个带有小数的实数,要求拆分显示该数的整数部分和小数部分的整数部分和小数部分PrivateSubCmdDisPlay_Click()DimNumAsDoubleNum=Val(TxtNum)获取用户在文本框中输入的

121、获取用户在文本框中输入的实数实数TxtInt=Cstr(Fix(Num)利用利用Fix函数获取实数的函数获取实数的整数部分,并在文本框中显示结果整数部分,并在文本框中显示结果TxtDec=Cstr(Num-Fix(Num)将该实数减去其将该实数减去其整数部分得到小数部分,并在文本框中显示结果整数部分得到小数部分,并在文本框中显示结果EndSub麓叁哼羚容吹港翁殃疏荫芒喳暖赖揖屎寝狙牙笑晃诅渗横矩喧迟特簿春狡第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.5.3字符串函数字符串函数

122、VisualBasic中字符串长度是以字符为单中字符串长度是以字符为单位的,即每个西文字符和每个汉字都作为位的,即每个西文字符和每个汉字都作为一个字符,占两个字节;若要以字节方式一个字符,占两个字节;若要以字节方式进行字符串处理,则可在某些字符串函数进行字符串处理,则可在某些字符串函数名后加名后加B。Len函数求字符串的字符数函数求字符串的字符数Len(“VB6.0教程教程”)返回值为返回值为7LenB函数求字符串的字节数函数求字符串的字节数LenB(VB6.0教程教程)返回值为返回值为14。详气鲍尘樟诸洽杯节枣夜你服贞烈敢汪顺光盈铅释坠扁迄孜矩乓获亭毒仪第4章VisualBasic程序设计基

123、础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版字符串字符串Len函数函数若若Len函数参数是非字符串型数据,则将求出该数据所占函数参数是非字符串型数据,则将求出该数据所占存储空间的字节数。存储空间的字节数。DimAAsInteger,BAsDouble,cAsString*5,DAsStringA=32000:B=16.5:c=VB:D=VB6PrintLen(A)窗体上显示窗体上显示2,VisualBasic用用2个字节存储个字节存储Integer的数据的数据PrintLen(B)窗体上显示窗体上显示8,Visual

124、Basic用用8个字节存储个字节存储Double的数据的数据PrintLen(c) 窗体上显示窗体上显示5,定长字符串变量的长度,定长字符串变量的长度,完全由完全由*号后面的字符数决定号后面的字符数决定PrintLen(D) 窗体上显示窗体上显示3,变长字符串变量的长度,变长字符串变量的长度由字符串中实际存放的字符个数决定由字符串中实际存放的字符个数决定瞪斥拣榆嚏惦趣迢址瓜赔董桨悦竹缀贩街防夸绷羡羚苑讹厨趁疑胡景砸笋第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版Mid以插入字符串语

125、句形式出现以插入字符串语句形式出现PrivateSubForm_Click()DimSAsStringS=abABaABMid(S,2)=1234S=a1234ABPrintS窗体上显示窗体上显示a1234ABS=abABaABMid(S,2)=123456789S=a123456PrintS窗体上显示窗体上显示a123456S=abABaABMid(S,2,2)=1234S=a12BaABPrintS窗体上显示窗体上显示a12BaABEndSub格式:格式:Mid(字符串变量字符串变量,位置位置,L)=子字符串子字符串表示把表示把“字符串变量字符串变量”指定指定“位置位置”开始的字符开始的字

126、符“子字子字符串符串”替换。如含有参数替换。如含有参数L,则替换内容是,则替换内容是“子字符子字符串串”左部的左部的L个字符。个字符。悟让坍蛙已鲁栽素贯脯膝讽况级壮涎束炎翟泞此持赃匿鸿苑颊冲孰诅研奢第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版字符串匹配函数字符串匹配函数InstrInstr(n,x1,x2,m)的第的第3个字符串参数个字符串参数x2的长度必须的长度必须小于小于65535个字符,函数返回的值是长整型数;函数的最个字符,函数返回的值是长整型数;函数的最后一个参数后一个

127、参数m是可选的整型数,用来指定字符串比较方式:是可选的整型数,用来指定字符串比较方式:取值为取值为0,表示进行二进制比较,区分字母的大小写;取,表示进行二进制比较,区分字母的大小写;取值为值为1,表示在比较时忽略大小写;取值为,表示在比较时忽略大小写;取值为2,表示基于,表示基于数据库中包含的信息进行比较(仅用于数据库中包含的信息进行比较(仅用于MicrosoftAccess);缺省情况下为);缺省情况下为0。表达式表达式InStr(1,abABaAB,AB,1)的值是的值是1。通过以下语句限定比较方式通过以下语句限定比较方式OptionCompareBinary取值为取值为0OptionCo

128、mpareText取值为取值为1OptionCompareDataBase取值为取值为2跳琵酞骡洞袄舟愉孔值徽斧勋岳奇顿仙引狄鞍欢唱喷韦院拦派景倘地番等第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版字符串字符串String函数函数String函数的第函数的第2个参数除了可以是字符串,个参数除了可以是字符串,也可以是某个字符的也可以是某个字符的ASCII码值,此时,码值,此时,String函数返回函数返回ASCII码对应的码对应的n个字符。个字符。表达式表达式String(5,48)

129、的值是的值是00000,其中,其中48是字符是字符0的的ASCII码值。码值。比庞霄邱齐乍芦譬倔粱谨泵册恒可装尺箔付湖嗽髓眉粟谣菇笋倡景漏婶卢第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版例题例题4-3输入一个输入一个01000之间的整数之间的整数x,判断是否同构。若某数平,判断是否同构。若某数平方数的最后几位与该数相等,则该数是同构数,如方数的最后几位与该数相等,则该数是同构数,如52=25,5是同构数。是同构数。PrivateSubCmdjudge_Click()DimxAsI

130、ntegerx=Txtx.Text获取用户在文本框中输入的整数获取用户在文本框中输入的整数IfRight(Cstr(x2),Len(Cstr(x)=Cstr(x)Then根据是否是同构数的条件判断,在标签中显示判断结论根据是否是同构数的条件判断,在标签中显示判断结论LblResult=x&“是同构数是同构数”ElseLblResult=x&“不是同构数不是同构数”EndIfEndSub戌阻鄙椰壬汝讣谊综蚜粪枚曲桅伪倦持真剪粕东斯航莹会除爆窄荤供薯臼第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011

131、2011版版4.5.4判断函数判断函数TypeName(x)返回测试数据返回测试数据x的类型的类型IsNumeric(x)返回返回x是否是数值类型数据的是否是数值类型数据的结论结论True表示是,表示是,False表示否表示否IsDate(x)返回返回x是否是日期类型数据的结论,是否是日期类型数据的结论,True表示是,表示是,False表示否表示否IsObject(x)返回返回x是否是对象数据的结论,是否是对象数据的结论,True表示是,表示是,False表示否表示否IsEmpty(x)返回返回x是否有值的结论,是否有值的结论,True表表示是,示是,False表示否表示否专梳羚粹萎特侯烂缕

132、耀遍穷壹绦昏祁设借汰岩商佣百弱原商图傻灭旬辟愧第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.5.5日期函数日期函数日期与时间函数日期与时间函数YearMonthDayWeekday函数参数可以是日期型数据、数值表达式函数参数可以是日期型数据、数值表达式也可以是字符串表达式,当为数值表达式也可以是字符串表达式,当为数值表达式时,表示相对于时,表示相对于1899年年12月月30日前日前后的后的天天数数;负数代表的是负数代表的是1899年年12月月31日日之前的之前的日期和时间日期和

133、时间稠梯浆芦橙订状趾册唯趁晰身抡释温头肥歉桶更咱诛郸销炳布俱茶仔树纶第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版例题例题4-4模拟显示打电话的通话时间模拟显示打电话的通话时间分析:用计时器控件的分析:用计时器控件的Timer事件,每隔一段时事件,每隔一段时间,动态刷新显示当前时间和剩余时间。当前时间,动态刷新显示当前时间和剩余时间。当前时间可以通过间可以通过Time函数获取,剩余时间可以通过函数获取,剩余时间可以通过DateDiff函数获取。函数获取。日期时间差函数:日期时间差函

134、数:DateDiff(日期时间间隔形式日期时间间隔形式,日期时间日期时间1,日期时间日期时间2)酋中棉衫评轮用懈隧钱传沉但候坚盲搀瑟色篮媒优效江弊路肮油汹磕块斌第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版例题例题4-4DimStartTimeAsDate定义变量定义变量StartTime记录通话起始记录通话起始时间时间PrivateSubCmdStart_Click()“通话开始通话开始”命令按钮的单击事件命令按钮的单击事件StartTime=Time:TxtStartTime.

135、Text=Str(Time()TxtEndTime.Text=:LblTime.Caption=CmdStart.Enabled=False:CmdEnd.Enabled=TrueTimer1.Interval=500:Timer1.Enabled=TrueEndSubPrivateSubCmdEnd_Click()“通话结束通话结束”命令按钮的单击命令按钮的单击事件事件Timer1.Enabled=FalseCmdEnd.Enabled=False:CmdStart.Enabled=TrueEndSubPrivateSubTimer1_Timer()利用计时器控件的利用计时器控件的Timer

136、事件动态事件动态实时显示当前通话时间实时显示当前通话时间DimHAsInteger,MAsInteger,SAsInteger,TotalAsLongTotal=DateDiff(s,StartTime,Time):TxtEndTime.Text=Str(Time()S=TotalMod60M=Total60Mod60H=Total3600LblTime=Format(H,00)&:&Format(M,00)&:&Format(S,00)EndSub沂摹啼戎揽暑搞纽苇彦狗半庄护停愉孩拍评澜拄砚颧邯晨裙站授冷罢乐涯第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江

137、南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.5.6Rnd函数与函数与Randomize语句语句1随机函数随机函数Rnd返回一个返回一个0,1)间的间的双精度数双精度数产生一个产生一个a,b区间的随机整数公式:区间的随机整数公式:Int(Rnd*(ba+1)+a)(1)产生)产生6位随机整数位随机整数Int(Rnd*(999999100000+1)+100000)(2)产生)产生0.002,0.5之间随机数,最小数据间隔为之间随机数,最小数据间隔为0.001Int(Rnd*(5002+1)+2)/1000先生成先生成2,500之间的随机整数,后除以之间的随机

138、整数,后除以1000薯捐币遂仲耀庐阻饲毋凌际游匡撼募募窄媚肮悍笔粮棍尾曳电饿啮诱叼喷第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.5.5Rnd函数与函数与Randomize语句语句2Randomize语句语句系统产生的随机数是由种子来决定的,默认情况下,系统产生的随机数是由种子来决定的,默认情况下,每次运行同一个应用程序,每次运行同一个应用程序,VisualBasic都提供相同都提供相同的种子,即的种子,即Rnd将产生相同的随机数序列。可以通过将产生相同的随机数序列。可以通过改

139、变种子的方法,使每次产生不同的随机数序列。改变种子的方法,使每次产生不同的随机数序列。Randomizenumber该语句作用是初始化该语句作用是初始化VisualBasic的随机函数发生器(为其赋初值)的随机函数发生器(为其赋初值)其中,其中,number为新的种子值,若省略,则使用系统计为新的种子值,若省略,则使用系统计时器返回的值作为新的种子值。时器返回的值作为新的种子值。粗潜否冀垦脸婉败雇厂焦甸搐茸盟瓷嘶今圣王以衍键忿臃歼瓮鲤另伯规轩第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 201

140、1版版例题例题4-5抽取幸运观众(观众编号范围在抽取幸运观众(观众编号范围在1200之间)之间),在文本框中显示抽取观众结果,在文本框中显示抽取观众结果PrivateSubCommand1_Click()“抽取幸运观众抽取幸运观众”命令按钮的单击事件命令按钮的单击事件Randomize每次执行应用程序时产生不同的随机每次执行应用程序时产生不同的随机数列数列随机产生随机产生1200之间的观众编号,显示在文本框中之间的观众编号,显示在文本框中Text1.Text=Int(Rnd*200+1)EndSub俊氖陌殖伪冯佬庐饮烁堤实蚁鲤自虱王菇骆靛韩宰悔流仅缓痹续交脾同副第4章VisualBasic程序

141、设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.5.7输入框输入框InputBox函数函数Var = = InputBox(PromptPrompt,TitleTitle,defaultdefault,x,y,helpfile,context)程序执行该格式语句时,弹出一个供用户输入信息的对话程序执行该格式语句时,弹出一个供用户输入信息的对话框,等待用户输入正文或按下按钮,并返回文本框内容框,等待用户输入正文或按下按钮,并返回文本框内容GVar是变量名是变量名,用于存放用于存放InputBox函数的返回值函数的

142、返回值,即用户输入即用户输入的内容的内容GPrompt是提示用的文字信息是提示用的文字信息,字符串类型字符串类型,长度长度=1024个字符个字符GTitle是对话框标题是对话框标题(字符型字符型),缺省时则把应用程序名放入标题缺省时则把应用程序名放入标题栏栏GDefault是显示在用户编辑框中的缺省值是显示在用户编辑框中的缺省值(字符型字符型),缺省时返缺省时返回空值回空值Gx,y是对话框在屏幕上显示时的位置是对话框在屏幕上显示时的位置(左上角点的坐标左上角点的坐标)Ghelpfile,context是帮助文件名及帮助主题号是帮助文件名及帮助主题号;有本选项时有本选项时,在在对话框中自动增加一

143、个帮助按钮对话框中自动增加一个帮助按钮六瞥动蒙逃卫谰拂猿制累销诀诛捡悠彼哼摩征巡牌凭藩弄实仁猪顿迅忿瘩第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.5.7输入框输入框InputBox函数函数例子例子JX=InputBox(“请输入字母请输入字母”,“输入对话框输入对话框”,“wuxi”)柿畸惭鲤氦贫撑骏婉级高匈檬明灌桶册痛狈雹隧照溢烷鸽睦爵数漆蜜拔蓉第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程

144、组制作 2011 2011版版4.5.7输入框输入框InputBox函数函数说明:说明:(1)Varname是变量名,用于存放是变量名,用于存放InputBox函数的返回值,即函数的返回值,即用户输入的内容。用户输入的内容。(2)prompt是作为消息文字出现在输入框上的是作为消息文字出现在输入框上的字符串表达式字符串表达式,不可以省略。不可以省略。prompt的最大长度大约是的最大长度大约是1024个字符,由所用字个字符,由所用字符的宽度决定。如果符的宽度决定。如果prompt包含多个行,则可在各行之间用回车包含多个行,则可在各行之间用回车符符Chr(13)、换行符、换行符Chr(10)、回

145、车换行符的组合、回车换行符的组合Chr(13)&Chr(10)或常量或常量VbCrLf来分隔。来分隔。(3)title是显示在输入框标题栏中的字符串表达式。如果省略是显示在输入框标题栏中的字符串表达式。如果省略title,则把应用程序名放入标题栏中。,则把应用程序名放入标题栏中。(4)default是输入框弹出时就显示在文本框中的默认字符串表是输入框弹出时就显示在文本框中的默认字符串表达式,在没有其它输入时作为默认值。如果省略达式,在没有其它输入时作为默认值。如果省略default,则文本,则文本框为空。框为空。计灯刹拔谢牌谭湾体躺杜胁辫柿紊壮仿禾橇怠韦浓竟壕昼约尾流躯爵培团第4章Visual

146、Basic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.5.7输入框输入框InputBox函数函数(5)xpos是表示是表示x坐标的坐标的数值表达式数值表达式,和,和ypos成对出现,指定对成对出现,指定对话框的左边与屏幕左边的水平距离。如果省略话框的左边与屏幕左边的水平距离。如果省略xpos,则对话框,则对话框会在水平方向居中。会在水平方向居中。(6)ypos是表示是表示y坐标的数值表达式,和坐标的数值表达式,和xpos成对出现,指定对成对出现,指定对话框的上边与屏幕上边的距离。如果省略话框的上边与屏幕

147、上边的距离。如果省略ypos,则对话框被放,则对话框被放置在屏幕垂直方向距下边大约三分之一的位置。置在屏幕垂直方向距下边大约三分之一的位置。(7)helpfile是表示帮助文件的字符串表达式,若识别到帮助文是表示帮助文件的字符串表达式,若识别到帮助文件,则使用该文件为对话框提供上下文相关的帮助。件,则使用该文件为对话框提供上下文相关的帮助。helpfile和和context一定会一起出现,即如果已提供一定会一起出现,即如果已提供helpfile,则也必须提供,则也必须提供context。使用。使用helpfile和和context将会使输入框增加一个将会使输入框增加一个“帮助帮助”按钮,用户可

148、以按按钮,用户可以按F1来查看与来查看与context相应的帮助主题。相应的帮助主题。(8)context是表示某个帮助主题的帮助上下文编号的数值表达是表示某个帮助主题的帮助上下文编号的数值表达式。式。豢该赘德倾尸益谚昧俊拟痢钥榆指漏划希蝉结日抬慕柴蒂啦诲易映逻肯苛第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.5.7输入框输入框InputBox函数函数在在InputBox函数的使用中如果要省略某些位置参数,原函数的使用中如果要省略某些位置参数,原则上都必须加入相应的则上都必须加

149、入相应的逗号分界符逗号分界符,有一种情况下可以不,有一种情况下可以不加逗号,就是省略其后所有可省略的参数。加逗号,就是省略其后所有可省略的参数。s=InputBox(“请输入你的姓名请输入你的姓名”,Height/2)其中其中Height/2是是ypos参数,中间的参数,中间的title、default和和xpos都被都被省略了。省略了。怪唁枕套扳窥琢泌孩拿鸦兄捍凋逻辑堵样寐跃禹敦诀怯损棵注您喂铃孙德第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.5.7输入框输入框InputBo

150、x函数函数2InputBox函数的返回值函数的返回值格式中的格式中的VarnameVarname用来存放用来存放InputBoxInputBox函数的返回值,该返函数的返回值,该返回值是一个回值是一个StringString型型数据。数据。VarnameVarname可以是变体变量或字符串型变量,也可以是数值可以是变体变量或字符串型变量,也可以是数值型变量型变量(若输入内容不可转换成数值型数据,将会产生运若输入内容不可转换成数值型数据,将会产生运行错误行错误)由由InputBoxInputBox函数产生的输入框一般有函数产生的输入框一般有“确定确定”和和“取消取消”两个按钮,如果用户两个按钮,

151、如果用户单击单击“确定确定”按钮按钮或按下回车键,则或按下回车键,则InputBoxInputBox函数返回文本框中的内容。如果用户函数返回文本框中的内容。如果用户单击单击“取消取消”按钮按钮或按下或按下EscEsc键,则此函数返回一个长度为零的字符键,则此函数返回一个长度为零的字符串串 () ()。 扛宪旁钓闯拢创嘎蓉囤壶蛋音兜圆搔隧釜碟爱滔宏磐阎波椽室乘篡陷况左第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.5.7输入框输入框InputBox函数函数3InputBox函数举例

152、函数举例例例6-4用户在运行时输入列表框的各个单词项。用户在运行时输入列表框的各个单词项。PrivateSubCommand1_Click()DimsAsString,messageAsStringmessage=请输入列表项内容请输入列表项内容&vbCrLf&要求输入一个英文单词要求输入一个英文单词s=InputBox(message,输入数据输入数据)List1.AddItemsEndSub缺陷:缺陷:当用户输入时按了当用户输入时按了“取消取消”按钮或未输入就按按钮或未输入就按“确定确定”按按钮的时候,列表框中会被添加进一些空项。钮的时候,列表框中会被添加进一些空项。 迫郊蔼膏洽娱嗣饶辟讹

153、惨堪顽把堵戊美脯翟弃疑霓删襄啄乳桶窑北乒炽牡第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.5.8消息框消息框MsgBox函数函数MsgBoxMsgBox函数函数函数函数以信息框的形式用于向用户发布提以信息框的形式用于向用户发布提示信息,并要求用户做出必要的响应示信息,并要求用户做出必要的响应MsgBox(PromptMsgBox(Prompt,button,title,helpfile,context) )Gbutton:这是一个由:这是一个由4个数值常量组成的式子,形式个数值

154、常量组成的式子,形式为为c1+c2+c3+c4,用于决定信息框中,用于决定信息框中按钮的个数和类按钮的个数和类型、图标类型、强制回应型、图标类型、强制回应憨毫断剐钡周板徘趾拈牺怖帽锄谆询占烙笔窍丢鸵返凹莎活锋赂冰引阑逆第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.5.8消息框消息框MsgBox函数函数button参数中参数中c1的取值的取值c1内置常量名内置常量名意义意义0vbOkOnly只显示只显示“确定确定”按钮按钮1vbOkCancel显示显示“确定确定”和和“取消取消”

155、按钮按钮2vbAbortRetryIgnore 显示显示“终止终止”,“重试重试”和和“忽略忽略”按钮按钮3vbYesNoCancel显示显示“是是”,“否否”和和“取消取消”按钮按钮4vbYesNo显示显示“是是”和和“否否”按钮按钮5vbRetryCancel显示显示“重试重试”和和“取消取消”按钮按钮卷体浸疽刷冗河倒峨碱埃殖旬莫秦丑驱赌募洲祥当挫滋县掩轴土倚硬煤摘第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.5.8消息框消息框MsgBox函数函数button参数中参数中c

156、2的取值的取值c2内置常量名内置常量名意义意义16vbCritical显示关键信息图标显示关键信息图标32vbQuestion显示警示疑问图标显示警示疑问图标48vbExclamation显示警告信息图标显示警告信息图标64vbInformation显示通知信息图标显示通知信息图标枣郴块务艳倍雨玻盯箭瓮郁喉摹狸堆眩号蹄矗腰暇尚哩硫巴助绞殉敝虹楼第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.5.8消息框消息框MsgBox函数函数button参数中参数中c3的取值的取值c3内置常量

157、名内置常量名意义意义0vbDefaultButton1第一个按钮为缺省按钮第一个按钮为缺省按钮256 vbDefaultButton2第二个按钮为缺省按钮第二个按钮为缺省按钮512 vbDefaultButton3第三个按钮为缺省按钮第三个按钮为缺省按钮糜荔尼妓曰惦俗圭旧埔吴企隧乓嗽烯逆歇持歧浦凄姓喂栈疙辐浑仔枫甸温第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.5.8消息框消息框MsgBox函数函数button参数中参数中c4的取值的取值0vbApplicationModel应

158、用程序模式,用户在当前应用程序模式,用户在当前应用程序继续执行之前,必应用程序继续执行之前,必须对信息框做出响应;信息须对信息框做出响应;信息框位于最前面框位于最前面4096 vbSystemModel系统模式,所有应用程序均系统模式,所有应用程序均挂起,直到用户响应该信息挂起,直到用户响应该信息框为止框为止摩胡萎呻宇植凋铂不瞧禁载粒粗筐入系锋浑渺汕彰知诗搂蜀纺霸多腻报溃第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.5.8消息框消息框MsgBox函数函数MsgBox函数往往与条

159、件语句配合使用,根据用户选择单函数往往与条件语句配合使用,根据用户选择单击的按钮而返回不同的值,执行不同的操作击的按钮而返回不同的值,执行不同的操作MsgBox函数的返回值函数的返回值按钮名按钮名内置常量名内置常量名取值取值OK(确定确定)vbOK1Cancel(取消取消)vbCancel2Abort(终止终止)vbAbort3Retry(重试重试)vbRetry4Ignore(忽略忽略)vbIgnore5Yes(是是)vbYes6No(否否)vbNo7副亏丝压想硒坝闪尽淳风热杠琴婚卧遵惦嚏喇概财权嫩卑荆知烟泣苔头症第4章VisualBasic程序设计基础第4章VisualBasic程序设计基

160、础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.5.8消息框消息框MsgBox函数函数方法方法1:作为表达式(或表达式的一部分)形式出现JJ用于赋值语句用于赋值语句ans = MsgBox(确实要删除该文件吗确实要删除该文件吗? , 1+32+256,确认删除确认删除)JJ用于条件表达式用于条件表达式If MsgBox(“确实要删除该文件吗确实要删除该文件吗?”,1+32+256,“确认删除确认删除”)=1 ThenKill (k1.bmp)End IfJJ用于方法调用时的参数用于方法调用时的参数Print MsgBox(“确实要删除该文件吗确实要删除该文

161、件吗? ”, 1+32+256, 确认删除确认删除)暗斋筐哨躯稠舜协贷骗挎酋赤告甭傈昆科登勾盆痢埃下蹲贞损群嗓便若贫第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.5.8消息框消息框MsgBox函数函数方法方法2忽略函数返回值,以过程调用形式出现忽略函数返回值,以过程调用形式出现;通常通常用于发布信息、无须判断按下哪个按钮的情况用于发布信息、无须判断按下哪个按钮的情况MsgBox prompt, buttons , title , helpfile, context JMsgBo

162、x 确实要删除该文件吗确实要删除该文件吗? , 1 + 32 + 256, 确认删除确认删除JMsgBox 恭喜你恭喜你,注册成功注册成功!, vbOKOnly + vbExclamation, 信息提示信息提示片扣亚走土擒贾应芋撬累恢联为疽禽返留砂溺欠擦哈支谍戌极轩杨峰婶酱第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版MsgBox函数举例函数举例例例4-7如图所示,在窗体上有如图所示,在窗体上有5个动物图片,用个动物图片,用户拖动某图片到目标框中时,将图片在目标框显户拖动某图片到

163、目标框中时,将图片在目标框显示,并弹出消息框告知用户该动物的名称。示,并弹出消息框告知用户该动物的名称。(a)初始界面)初始界面 (b)用户拖动后窗体界面)用户拖动后窗体界面 (c)用户拖动后出现的消息框)用户拖动后出现的消息框 晰哩础铃绢野迄绞碘峙甜建佬岔株淬责腔鹏债譬客狠觉描腮怔啮嚷僳遮沃第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版MsgBox函数举例函数举例分析:分析:将将5个动物个动物Image的的DragMode属性设置为属性设置为“1-Automatic”,并在目标框

164、,并在目标框Image1的的DragDrop事件中事件中编写代码。编写代码。PrivateSubimage1_DragDrop(SourceAsControl,_XAsSingle,YAsSingle)Image1.Picture=Source.PictureMsgBox“你拖动的动物是:你拖动的动物是:”&Source.Name,_vbInformation,“提示提示”EndSub摊哄渐臃雾掩买宴蛋即钒晰洁什妇幅筋为枯攀颐番呆络砒藐徽空烤苦库笔第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011

165、2011版版4.5.9格式输出格式输出Format函数函数使用使用Format函数可对于数值、日期和字符串函数可对于数值、日期和字符串按指定的标按指定的标准格式输出准格式输出。Format函数的格式:函数的格式:Format(表达式表达式,格式字符串格式字符串)说明:说明:(1)表达式是需要格式转化的数值、日期和字符串类)表达式是需要格式转化的数值、日期和字符串类型表达式型表达式(2)格式字符串表示指定的输出格式,用双引号括起;)格式字符串表示指定的输出格式,用双引号括起;格式字符串是由格式符构成的,表格式字符串是由格式符构成的,表4-11仅列举常用数仅列举常用数值格式符,日期和字符串格式符请

166、通过帮助查阅;格值格式符,日期和字符串格式符请通过帮助查阅;格式字符串默认时,针对数值表达式式字符串默认时,针对数值表达式Format函数功能与函数功能与Cstr函数相同函数相同(3)该函数返回一个字符串类型的数据)该函数返回一个字符串类型的数据魔毖喊爽邀祝譬展残抹慌吵辰植冬桩枣驳砌刹拱俩脐扛骄斩痊迎纂傈肺浙第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版格式输出函数格式输出函数Format$(表达式表达式 ,格式字符串,格式字符串)设设x=123456.78PrintFormat$

167、(x,000000000000)000000123457x的的位位数数少少于于控控制制字字符符串串的的位位数数,自动在整数前、小数后补自动在整数前、小数后补0PrintFormat$(x,#)123457x的的位位数数少少于于控控制制字字符符串串的的位位数数,不在整数前、小数后补不在整数前、小数后补0PrintFormat$(x,#,#,#.#)123,456.8增增加加千千分分位位分分隔隔符符和和小小数数点点,使使x四舍五入到一位小数四舍五入到一位小数PrintFormat$(x,#%)12345678%x乘乘100后再加上百分号后再加上百分号诛错板睡铱熏政煽凿羊惰抨银稿绵足稿村手观入考昏服

168、釜参扫糯豢蜘铭时第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版格式输出函数格式输出函数Format$(表达式表达式 ,格式字符串,格式字符串)数值格式化数值格式化0实际数字小于符号位数时,数字前后加实际数字小于符号位数时,数字前后加0Format(1234.567,“00000.0000”)结果:结果:01234.5670# 实际数字小于符号位数时,数字前后不加实际数字小于符号位数时,数字前后不加0Format(1234.567,“#.#”)结果:结果:1234.567. 加小数点

169、,设置小数位数加小数点,设置小数位数Format(1234,“0000.00”)结果:结果:1234.00僵缘吁柿枚鼓糠莫味钠尚喘孵晾拳脆荡植邀唇零着寻薛羊胶梁棚祖秉驴土第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版例例将例题将例题4-1中的输出结果的中的输出结果的部分代码,用部分代码,用Format函数函数格式化保留格式化保留4位小数输出位小数输出PrivateSubForm_Click()PrintSin(30)=&Format(Sin(x),0.0000)PrintCos(3

170、0)=&Format(Cos(x),0.0000)PrintTan(30)=&Format(Tan(x),0.0000)PrintCTan(30)=&Format(1/Tan(x),0.0000)EndSub粗罕痪闺吹主拟唬材溺橡柜尸抚窄熏州蓟赞窝仍洞架交谩冤旋乒狡陌幢尹第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版格式输出函数格式输出函数Format$(表达式表达式 ,格式字符串,格式字符串)数值格式化数值格式化,千分位千分位Format(1234.567,“#,#0.0000”

171、)结果:结果:1,234.5670%数值乘以数值乘以100,加百分号,加百分号Format(1234.567,“#.#%”)结果:结果:123456.7%$ 在数字前强加在数字前强加$Format$(1234.567,“$#.#”)结果:结果:$1234.57款振俊辞叁蹈耍牛削区圭箭偿盅第郎吮严送游酉妙医萍蚁静区蛙柠卫操湖第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版格式输出函数格式输出函数Format$(表达式表达式 ,格式字符串,格式字符串)数值格式化数值格式化+在数字前强加在

172、数字前强加+Format$(-1234.567,“+#.#”)结果:结果:+-1234.57 - 在数字前强加在数字前强加-Format$(1234.567,“-#.#”)结果:结果:-1234.57E+用指数表示用指数表示Format$(0.1234,“0.00E+00”)结果:结果:1.23E-01(相当于相当于1.23*10-1)E-与与E+相似,但不显示正数的符号位相似,但不显示正数的符号位氢蒲伐娇蔼卞何惦棉瘦沟谚脸皱陶阑瓜汞庭踌顶断樱郡宣仪哲蚊异场弛忍第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制

173、作 2011 2011版版格式输出函数格式输出函数Format$(表达式表达式 ,格式字符串,格式字符串)日期和时间格式化日期和时间格式化d显示日期(显示日期(131),个位前不加),个位前不加0dd显示日期(显示日期(0131),个位前加),个位前加0ddd显示星期缩写(显示星期缩写(SunSat)w星期为数字(星期为数字(17,1是星期日)是星期日)ww一年中的星期数(一年中的星期数(0153)y显示一年中的天(显示一年中的天(1366)yy两位数显示年份(两位数显示年份(0099)MyDate=#January27,1993#Format(MyDate,ddd,mmmdyy)Wed,Ja

174、n2793髓溺糊彩起貌擦仪续隅挞截万基蜘淘菱协嫩巷郧要吨佳蔗矾舔芜瘤澳双锰第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版格式输出函数格式输出函数Format$(表达式表达式 ,格式字符串,格式字符串)字符串格式化字符串格式化强迫以小写显示强迫以小写显示Format(“HELLO”,“强迫以大写显示强迫以大写显示Format(“hello”,”)结果:结果:HELLO实际字符位数小于符号位数时,字符前加空格实际字符位数小于符号位数时,字符前加空格Format(“ABCD”,“”)结果

175、:结果:_ABCD&实际字符位数小于符号位数时,字符前不加空格实际字符位数小于符号位数时,字符前不加空格Format(“ABCD”,“&”)结果:结果:ABCD爹吐沛硬郸鸭抖帘脐昂灾阎债粟绕奠张执轩殖稀稗蓖贸嘛绪创圃幢僚焙奇第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版4.5.10Shell函数函数Shell函数格式函数格式:Shell(命令字符串命令字符串,窗口类型窗口类型)功能:调用功能:调用Dos或或Windows程序下的可执行程序(扩展程序下的可执行程序(扩展名为名为.co

176、m、.exe、.bat、.pif的文件)。的文件)。说明:说明:(1 1)命令字符串中包含可执行程序完整的路径和文件)命令字符串中包含可执行程序完整的路径和文件名。名。(2 2)窗口类型表示执行可执行程序的窗口大小)窗口类型表示执行可执行程序的窗口大小(3 3)函函数数返返回回一一整整型型数数值值,为为一一任任务务标标识识IDID,用用于于程程序判断是否正确执行应用程序。序判断是否正确执行应用程序。(4 4)ShellShell函数是以异步方式来执行其他程序的,即函数是以异步方式来执行其他程序的,即ShellShell启动的程序可能还没有执行完,就已经执行启动的程序可能还没有执行完,就已经执行

177、ShellShell函数之后的语句函数之后的语句 预鹃憾沮徐悯票盘上店嵌虽讶齿淖堆凉威村辗么唇娃佐甥陀惦夺捷震点扯第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版例题例题4-8建立个人常用软件库,方便用户使用常用软件建立个人常用软件库,方便用户使用常用软件OptionExplicitPrivateSubCmdCal_Click()“计算器计算器”命令按钮的单击事件命令按钮的单击事件DimxAsDoublex =Shell(C:WINNTSystem32calc.exe, vbMaxi

178、mizedFocus)以最大化窗口方式执行以最大化窗口方式执行Windows的的计算器计算器程序程序EndSubPrivateSubCmdNote_Click()“记事本记事本”命令按钮的单击事件命令按钮的单击事件DimxAsDoublex =Shell(C:WINNTSystem32notepad.exe, vbMaximizedFocus)以最大化窗口方式执行以最大化窗口方式执行Windows的的记事本记事本程序程序EndSub甥陆猎诀砌荒磁妆怜罢眼枯偿商烯搓呆疏粪末阮状年汽淑傈擞竣穷概吁堤第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课

179、程组制作江南大学计算机基础课程组制作 2011 2011版版4.6应用举例应用举例例题例题4-9例题例题4-10行憾投拌慎症砂稻冕肖谁持幂仿卢枫搜俐睦谷娃介敲壳唆源唱相楞通陛谎第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版例题例题4-9如图实现逆序输出用户输入的三位整数。例如:如图实现逆序输出用户输入的三位整数。例如:用户输入用户输入361,应逆序输出,应逆序输出163。分析:逆序输出整数,其实就是将原整数分析:逆序输出整数,其实就是将原整数X的每的每一位上的数字,重新改变所在位置

180、后输出。关键:一位上的数字,重新改变所在位置后输出。关键:如何取得整数如何取得整数X每一位上的数字?每一位上的数字?谈江彤协屡护锌脂洪首羹茸顽琼犬揩卷绷备视抽豌戌药挖泻帚诲社俊掐啪第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版例题例题4-9方案一:通过算术运算实现方案一:通过算术运算实现个位数字个位数字=XMod10十位数字十位数字=X10Mod10百位数字百位数字=X100逆序后的数据逆序后的数据=个位数字个位数字*100+十位数字十位数字*10+百位数字百位数字PrivateS

181、ubCmdReverse_Click()DimXAsInteger,indivAsInteger,tenAsInteger,hundredAsIntegerX=Val(TxtNum.Text)从文本框中取得待逆序的数据从文本框中取得待逆序的数据indiv=XMod10通过取余方法获取个位上的数字通过取余方法获取个位上的数字ten=X10Mod10通过整除和取余方法获取十位上的数字通过整除和取余方法获取十位上的数字hundred=X100通过整除方法获取百位上的数字通过整除方法获取百位上的数字X=indiv*100+ten*10+hundred对每位上的数字重新赋予权值、累加构造逆序数对每位上的

182、数字重新赋予权值、累加构造逆序数TxtRNum.Text=CStr(X)输出逆序结果输出逆序结果EndSub氨漱卉常喘盟辊锡有除姜颠木嘶堰砖股誊丑歇烹讹葛苗着触栽遵薄名侦端第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版例题例题4-9方案二:字符串方式实现方案二:字符串方式实现个位数字字符个位数字字符=Mid(X,3,1)十位数字字符十位数字字符=Mid(X,2,1)百位数字字符百位数字字符=Mid(X,1,1)逆序后的数据即为每一位上的数字字符用字符串连接逆序后的数据即为每一位上的

183、数字字符用字符串连接符符&的逆序连接。的逆序连接。PrivateSubCmdReverse_Click()DimXAsString*3根据处理数据根据处理数据X参与的主要运算定义其为字符参与的主要运算定义其为字符串型串型DimindivAsString*1,tenAsString*1,hundredAsString*1X=TxtNum.Text从文本框中取得待逆序的数据从文本框中取得待逆序的数据indiv=Mid(X,3,1)通过取子串通过取子串Mid函数取得个位上的数字字符函数取得个位上的数字字符ten=Mid(X,2,1)通过取子串通过取子串Mid函数取得十位上的数字字符函数取得十位上的数

184、字字符hundred=Mid(X,1,1)通过通过Mid函数取得百位上的数字字符函数取得百位上的数字字符X=indiv&ten&hundred将每一位上的数字字符用字符串连接符将每一位上的数字字符用字符串连接符&的逆序连接的逆序连接TxtRNum=X逆序输出密文结果逆序输出密文结果EndSub蹬疙樊浴它掠站赁漾际砒丰蚂迁筐跺茹孙舌骑默绝乘咒祁谍面源敢九蓬瑞第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版例题例题4-10如图实现对于用户输入的一个数字进行加密显示,加密方如图实现对于用户

185、输入的一个数字进行加密显示,加密方法如图:数字循环左移法如图:数字循环左移2位。例如:位。例如:6加密得到加密得到4、2加密加密得到得到0、0加密得到加密得到8。分析:类似于钟表盘的循环问题,常常借助分析:类似于钟表盘的循环问题,常常借助Mod运算符来运算符来解决,形式如下:解决,形式如下:密文数字密文数字m=(明文数字(明文数字n+循环偏移量循环偏移量d+10)Mod10根据题目要求,此处循环偏移量根据题目要求,此处循环偏移量d=-2,所以该题的,所以该题的密文数字密文数字m=(明文数字(明文数字n-2+10)Mod10袖苑哨隘客杖歉渠洋闹滩刽贤色及秽男茨配锄旋洽邢生彰胚讥帝茫怜嘱讯第4章V

186、isualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版例题例题4-10OptionExplicitPrivateSubCmdEncrypt_Click()“加密加密”命令按钮的单击事件命令按钮的单击事件DimnAsInteger,mAsIntegern=Val(TxtNum)从文本框中获取用户输入的数字从文本框中获取用户输入的数字m=(n-2+10)Mod10加密加密TxtCryptograph=CStr(m)通过文本框显示加密结果通过文本框显示加密结果EndSub思考:若要实现字母的循环移动加密

187、,该如何思考:若要实现字母的循环移动加密,该如何改写代码呢?改写代码呢?犯鸳荡颅险五榷辰厌耳邵咎鞠友葫尊德颜侵墟郧隅蝗惫窄技汪日铀誊践绎第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础江南大学计算机基础课程组制作江南大学计算机基础课程组制作 2011 2011版版本本章章小小结结数据类型、常量、变量、运算符、函数和表达式数据类型、常量、变量、运算符、函数和表达式是是VB程序设计语言的基础程序设计语言的基础在编写程序时,不仅要从描述数据目前的在编写程序时,不仅要从描述数据目前的取值取值考考虑,还要从它虑,还要从它参与的运算参与的运算角度、角度、运算结果运算结果等方

188、面等方面综合考虑,综合考虑,合理选择数据类型合理选择数据类型来描述数据。因此,来描述数据。因此,必须清楚地掌握不同数据类型、运算符和函数的必须清楚地掌握不同数据类型、运算符和函数的功能、所适用的场合和使用注意点功能、所适用的场合和使用注意点在描述在描述VB表达式时,尤其要注意表达式时,尤其要注意VB算术表达式算术表达式与数学式的区别,以及逻辑条件表达式的构造;与数学式的区别,以及逻辑条件表达式的构造;VB函数的调用通常只能出现在表达式中,目的是函数的调用通常只能出现在表达式中,目的是使用函数求得一个值。使用函数求得一个值。球歉恳毯胰钡挖耳螺骗赦蹈位虱页聋纽啡殃胰坤量雅泻虹哆惧敷炭锚邑肋第4章VisualBasic程序设计基础第4章VisualBasic程序设计基础

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作计划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号