版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
3.1编码基础VisualBasic作为一门计算机高级语言,有自己特定的语法要求,主要有以下几点:(1)VisualBasic代码不区分字母的大小写。系统保留字自动转换每个单词的首字母大写。(2)语句书写自由。一行可书写几句语句,之间用冒号分隔。一句语句可分若干行书写,用续行符“_”连接(实际使用时一个空格符后紧跟一个下划线)。一行≤255个字符。注意:不能将变量名或属性名分在两行上书写。下一页返回3.1编码基础(3)注释。使用注释有利于程序的维护和调试。注释由关键字Rem或单撇“′”开始。格式:Rem一个可视化的VisualBasic应用程序注释部分不能在接在缩行符“_”之后。对于多行注释,每行都必须由注释符开始。可以使用VisualBasic提供的“编辑”工具栏来“设置注释块”和“解除注释块”(定制编辑工具栏的方法:视图->工具栏->编辑)。上一页返回3.2数据类型数据是描述客观事物的数、字符以及用所有能输入计算机并被计算机程序加工处理的符号的集合。现实世界有多种数据,在这些数据上能进行的运算一般也各不相同,含义也不相同,为此VisualBasic定义了多种数据类型,如表3-1所示。3.2.1数值型数据类型数值型数据类型的关键字为Integer、Long、Single、Double、Currency、Byte。在写具体数值时注意不要超过规定的数据类型所允许的范围,否则运行时会发生溢出错误。运算结果如超出范围同样也会发生溢出错误。下一页返回3.2数据类型1.Integer和Long在VisualBasic中整型数用±n[%]表示,n是0~9的数字,%是整型数的类型符,可省略,例如:12%,12,123,456%。长整型数用±n&表示,n是0~9的数字,例如:12&,-12345&。另外,VisualBasic中还有二进制、八进制、十六进制常数。二进制常数形式:数值前面加&B,例如:&B1001,&B10000。八进制常数形式:数值前面加&O或&(注:若在程序中&后无O,则系统自动加上O),例如:&O123,&O3457。上一页下一页返回3.2数据类型十六进制常数形式:数值前面加&H,例如:&H79FF,&H79FF6。2.Single和DoubleVisualBasic中单精度浮点数精度为7位,双精度度浮点数精度为16位。单精度浮点数有多种表示形式:±n.n、±n!、±nE±m、±n.nE±m,其中m、n为0~9数字。表示双精度的浮点数只要将表示单精度浮点数的“!”和“E”分别换成“#”和“D”即可,或者在“E”的数字之后加上“#”。上一页下一页返回3.2数据类型3.CurrencyCurrency是定点实数或整数,最多保留小数点右边4位和小数点左边15位。其用于货币计算。表示数字后用@符号,例如123.4@、123@。3.2.2日期型数据类型日期型按8个字节的浮点数来存储,表示日期范围是公元100年1月1日至9999年12月31日,而时间范围为0:0:00至23:59:59。上一页下一页返回3.2数据类型日期型数据表示有两种方法:(1)任何字面上可被认作日期和时间的字符,用号码符(#)扩起来表示,例如:#January1,2000#;#10/12/2000#;#1998-5-1212:30:00PM#。(2)以数字序列表示:小数点左边的数字代表日期,表示经过的天数,1表示1899-12-31,2表示1900-1-1;小数点右边的数字代表时间;0表示午夜,0.5为中午12点;负数代表的是1899年12月31日之前的日期和时间。3.2.3逻辑型数据类型若变量的值只是"True/False""Yes/No""On/Off"信息,则可将它声明为Boolean类型。上一页下一页返回3.2数据类型Boolean的缺省值为False。在关系运算中,返回值为布尔型数值,布尔型变量一般用于程序流程控制的条件判断语句。例如:DimtestBlnAsBooleanTestBln=TrueTestBln=False当逻辑型数据True转换成整数时值为-1,False转换成整数时值为0。而当其他数据转换成逻辑型数据时,非0数据转换成True,0转换成False。字符型数据不能转换成逻辑型数据。上一页下一页返回3.2数据类型3.2.4字符型数据类型字符串类型变量用于保存字符信息。字符串可以为定长,也可以为变长,每个字符占用一个字节。字符可以包括所有西文字符和汉字字符,两头用双引号("")扩起来。如果字符串中有双引号则用两个连续的双引号表示。符号""表示空字符串,而""表示有一个空格的字符串。上一页下一页返回3.2数据类型3.2.5变体型数据类型变体(Variant)是一种特殊的数据类型,为VisualBasic的数据处理增加了智能性,它是所有未定义的变量的默认数据类型,它对数据的处理完全取决于程序上下文的需要。它可以包括上述的数值型、日期型、对象型、字符型数据。上一页返回3.3变量与常量3.3.1变量变量是程序运行中随时改变的量。变量的命令规则和声明方法要符合语法规定。1.变量和常量的命名规则(1)变量:在程序运行中其存储的值可以改变。(2)常量:在程序运行中其值不可以改变。变量命名规则如下:(1)只能由字母、数字和下划线组成,首字符必须是字母;(2)长度不超过255个字符;(3)在作用域内必须唯一;下一页返回3.3变量与常量(4)不得包括点号和用于类型说明的字符(%、&、!、#、@、$);(5)不得使用系统保留字。2.变量声明变量的声明分为两种方法:隐式声明和显式声明。1)用Dim语句显式声明变量格式:Dim变量名[AS类型]Dim变量名类型符例如,DimiCountAsInteger,sAllsumAsSingle其等价于DimiCount%,sAllsum!(注意:变量名和类型符之间不能有空格)上一页下一页返回3.3变量与常量注意:定义一个变量后,如果用户不给赋值,系统会自动为该变量赋一个初始值。数值型:0。字符串:空串("")。逻辑性:False。在变量的类型说明语句中,必须对每个需要说明的变量逐个使用AsType说明其类型,如果未说明,则按变体型处理。例如:Dima,bAsInteger,变量a为变体类型。对于字符串变量类型,它的类型声明字符是$。根据其存放的字符长度固定与否,其定义方法有两种:上一页下一页返回3.3变量与常量(1)可变长字符串。大多数字符串变量是可变长字符串类型,存储在其中的字符串的长度可以为0到约20亿个字符(特例,只有定义而无赋值则为空串,即"")。可变长字符串变量一次只能存储一个字符串,其长度可以随程序运行而改变。例如下面一段程序将可变长字符串变量MyString$的值,从一个短字符串重新赋值成一个长字符串:DimMyStringAsString′定义一个可变长字符串MyStringMyString$="I′mnotlong."上一页下一页返回3.3变量与常量PrintMyString$‘有无$均可,但定义时不能既有$还有AsStringMyString$="Hey,I′malongstringnow."′赋新值后,MyString的长度变长了PrintMyString$(2)定长字符串。定长字符串存储确定长度的字符串。对此类型的变量,可以定义从1~65535(64KB)个字符的固定长度。程序可以改变定长字符串变量的内容,但是不能改变其长度。上一页下一页返回3.3变量与常量如果字符串的长度小于固定长度,则字符串的尾部自动补空格,使字符串的长度与定义长度相等(特例,只有定义而无赋值则为空格字符串,其个数为定义的长度数),如果字符串的长度大于固定长度,则字符串将被自动截除尾部多出的字符与固定长度相等。例如:DimMyStringAsString∗10′声明MyString具有10字符的定长字符串变量MyString="Maryis5."PrintMyStringMyString="Maryisfiveyearsold."上一页下一页返回3.3变量与常量′MyString的值为"Maryisfi",多余的部分被截断,舍弃PrintMyString在VisualBasic中,数字和包含数字的字符串变量可以方便地互换类型。如果字符表示数值,则可将字符串赋予数值变量,同时也可将数值赋予字符串变量,VisualBasic会自动强制变量为适当的数据类型。例如在下面的程序中,就可以随意地将数字和字符串混合使用:DimintXAsIntegerDimstrYAsStringstrY=3716′将数字赋值给字符串上一页下一页返回3.3变量与常量intX=strY′将字符串传递给数值变量String类型变量的字符码范围是0~255。字符集的前128个字符(0~127)对应于标准键盘上的字符与符号,而后128个字符(128~255)则代表了一些特殊字符,例如国际字符、重音字符、货币符号及分数。使用String类型可以声明两种字符串:变长字符串与定长字符串。2)隐式声明未进行上述的声明而直接使用的数据,其类型为变体类型。建议不使用隐式声明,以给编程和调试程序带来方便。上一页下一页返回3.3变量与常量注意:在通用声明处加OptionExplicit语句来强制显式声明变量(要自动添上OptionExplicit语句可用如下步骤实现:工具->选项->编辑器选项卡->要求变量声明)。3.变量的作用域与变量说明语句VisualBasic中变量的作用域及定义方法如表3-2所示。3.3.2常量1.符号常量的定义语法格式:[Public|Private]Const常量名[As类型]=数值或[Public|Private]Const常量名[类型符号]=数值上一页下一页返回3.3变量与常量例如:ConstPIAsDouble=3.1415926535等价于:ConstPI#=3.1415926535符号常量一经定义,在程序其他地方只能使用,不能对其赋值。注意事项:(1)Public选项只能用在标准模块中,以说明可在整个应用程序中使用的常量;Private选项则可用于在窗体模块范围内使用的常量。(2)只有省略Public和Private的Const语句才能出现在过程中。上一页下一页返回3.3变量与常量2.系统提供的常量系统定义常量位于对象库中,可通过“对象浏览器”查看。例如vbNormal、vbMinimized、vbCrLf等,在程序代码中使用Form1.WindowsState=vb⁃Maximized比使用Form1.WindowsState=2要明白得多。上一页返回3.4运算符和表达式3.4.1运算符VisualBasic中的运算符可分为算术运算符、字符串运算符、关系运算符和逻辑运算符四类。1.算术运算符算术运算符主要用于形成表达式、实现算术运算或者逻辑运算等。VisualBasic中常见的算术运算符如表3-3所示。2.字符串运算符&、+表示字符串连接。"123"+"456"结果为"123456"。"123"&"456"结果为"123456"。下一页返回3.4运算符和表达式区别:“+”两边若一个是数值字符串,另一个是数值,则视为数值加法,结果是数值;若一个是非数值字符串而另一个是数值,则出错;其余情况则视为字符串连接。“&”两边不管是数值还是数值字符串均视为字符串连接,结果为字符串。例如:"abcdef"+12345′出错"abcdef"&12345′结果为"abcdef12345""123"+456′结果为579,这里的"+"应理解成算术运算符"+"上一页下一页返回3.4运算符和表达式"123"&456′结果为"123456",首先将456转换成字符串然后再进行连结考察:"123"+456&456和456&"123"+456的结果。其结果分别是579456和456579。注意:"123"+456&456的"123"中的前后空各有无均可,结论相同。说明:VisualBasic中的“.5”规则:当一个含有“.5”的数被赋值给一个整数时,结果取离它最近的偶数。例如,当执行下列代码后,a=6,b=6,c=6,d=5:上一页下一页返回3.4运算符和表达式Privatesubcommand1_Click()DimaAsInteger,bAsInteger,cAsInteger,dAsIntegera=6.5b=5.5c=5.51d=5.49PrintaPrintbPrintcPrintdEndSub上一页下一页返回3.4运算符和表达式3.关系运算符将两个操作数进行大小比较,结果为逻辑量。操作数可以是数值型、逻辑型和字符型数据。字符串比较,则按字符的ASCII码值从左到右一一比较,直到出现不同的字符为止。例如:"ABCDE">"ABRA",结果为False。"男字">"女字",按汉字的拼音字母比较;汉字字符大于西文字符。关系运算符的优先级别相同,从左到右计算。VisualBasic的关系运算符如表3-4所示。上一页下一页返回3.4运算符和表达式特别注意:数学上表示某个数在某个区域时用表达式:10≤x<20。在VisualBasic程序中应写成:x>=10Andx<20。将其写成如下形式是错误的:10<=x<20或10<=xOrx<204.逻辑运算符对逻辑运算符两边的操作数进行逻辑运算,结果是逻辑值(True或False)。VisualBasic的逻辑运算符如表3-5所示,逻辑运算规则如表3-6所示。上一页下一页返回3.4运算符和表达式3.4.2表达式表达式由运算符和操作数组成。VisualBasic中的表达式包括算术表达式、关系表达式、逻辑表达式等。1.表达式的组成表达式变量、常量、函数、运算符和圆括号按一定的规则组成。2.表达式的书写规则(1)运算符不能相邻,例如a+-b是错误的。(2)乘号不能省略,例如x乘以y应写成:x∗y。(3)括号必须成对出现,均使用圆括号。(4)表达式从左到右在同一基准上书写,无高低、大小。上一页下一页返回3.4运算符和表达式3.表达式结果的数据类型讨论(1)如果运算的两个对象类型相同,则结果就是同一个数据类型。(2)如果操作数的数据精度不同,运算结果采用精度较高的操作数的数据类型。比如:整型数+长整型数=长整型数;整型数+单精度型数=单精度型数;长整型数+单精度型数=双精度型数(例外);“/”和“^”运算结果是双精度,不管两个操作数是什么类型;Mod和“\”的结果是整型或者长整型。上一页返回3.5赋值语句赋值语句用于把一个表达式或结果赋给一个变量。其形式为:变量名=表达式;对象.属性=表达式。功能:将表达式的值赋给变量名或指定对象的属性。赋值语句一般用于给变量赋值或对控件设定属性值,例如:sRate!=0.1Text1.Text="欢迎使用VisualBasic6.0"说明:(1)执行过程:先求表达式的值,然后将值赋给左边的变量。(2)右边的表达式可以是变量、常量、函数调用等特殊的表达式。下一页返回3.5赋值语句(3)“=”是赋值符号。(4)赋值符号“=”左边一定只能是变量名或对象的属性引用,不能是常量、符号常量、表达式。例如下面的赋值语句都是错的:5=X′左边是常量。Abs(X)=20′左边是函数调用,即表达式注意:赋值符号两边的数据类型一般应一致。如果赋值符号两边的数据类型不一致,规则如下:(1)如果变量为字符型,而表达式为数值型(算术表达式),则系统将自动把表达式的值转换成字符型赋给变量。上一页下一页返回3.5赋值语句(2)如果变量为逻辑型,而表达式为数值型,则所有的非0值转换成True赋给变量,“0”转换成False赋给变量。(3)把True赋给整型变量,变量的值为-1,把False赋给整型变量,变量的值为“0”。(4)把True赋给字符变量,变量的值为“True”,把False赋给字符变量,变量的值为“False”。(5)把一个非数值字符型的数据赋给数值变量,系统将给出类型不匹配的错误提示。上一页返回3.6常用内部函数VisualBasic提供了大量的内部函数,用户在编程时可直接使用它们,但要按照函数的要求,提供正确的表达式参数。以下函数中凡用字母C的表示字符串表达式参数,N表示数值表达式参数,D表示日期表达式参数,函数名后有$号的表示函数返回值为字符串类型。3.6.1数学函数VisualBasic中的数学函数主要用于实现数学运算,常用的数学函数如表3-7所示。下一页返回3.6常用内部函数Rnd函数返回0和1(包括0,但不包括1)之间的双精度随机数。每次运行时,要产生不同序列的随机数,需执行Randomize语句。使用的格式是:Randomize[N],如果省略了N,则表示使用系统计时器返回的值作为N的值,例如:产生1~100的随机整数:Int(Rnd∗100)+1;产生[m,n]的随机整数:Int(Rnd∗(n-m+1))+m。3.6.2转换函数VisualBasic中常用的转换函数如表3-8所示。上一页下一页返回3.6常用内部函数说明:(1)Str函数在将非负数转换成字符串时,在结果的左边加一个空格。(2)Val函数将数字字符串转换为数值,当字符串中出现数值类型规定外的字符时,则停止转换,函数返回的是停止转换前的结果。第一个字符为非数字字符则返回0值。3.6.3字符串函数字符串函数主要用于程序中对字符串进行操作。VisualBasic中常用的字符串函数如表3-9所示。上一页下一页返回3.6常用内部函数3.6.4日期函数日期函数主要用于日期操作。VisualBasic中常见的日期函数如表3-10所示。说明:日期型数据是一种特殊的数值型数据,它们之间只能进行加“+”、减“-”运算,有3种情况:(1)两个日期型数据可以相减,结果是一个数值型数据(两个日期相差的天数),例如:#12/19/1999#-#11/16/1999#′结果为数值型数据:33上一页下一页返回3.6常用内部函数(2)一个表示天数的数值型数据可加到日期型数据中,其结果仍然为一日期型数据(向后推算日期),例如:#11/16/1999#+33′结果为日期型数据:#99-12-19#(3)一个表示天数的数值型数据可从日期型数据中减掉它,其结果仍然为一日期型数据(向前推算日期),例如:#12/19/1999#-33′结果为日期型数据:#99-11-16#3.6.5格式输出函数Format格式输出函数Format可以使数值、日期或字符串按指定格式输出。格式输出一般用在Print方法中。上一页下一页返回3.6常用内部函数在VisualBasic6.0中还增加了FormatCurrency(货币格式)、FormatNumber(数字格式)、FormatPercent(百分比格式),针对不同的数字,系统已预定义了,用户只要调用相应的格式即可。格式输出函数的一般形式:Format(表达式[,格式字符串])。表达式是指要格式化的数值、日期和
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/Z 10062.32-2025锥齿轮承载能力计算方法第32部分:锥齿轮和准双曲面齿轮的ISO评价体系胶合承载能力算例
- 2026北京印钞有限公司招聘26人考试参考试题及答案解析
- 2026传奇腾芳幼儿园公开招聘5人考试参考题库及答案解析
- 2026年1月广西百色市田阳区城镇公益性岗位工作人员招聘1人考试备考试题及答案解析
- 2026重庆医科大学编外聘用人员招聘(第2轮)考试备考试题及答案解析
- 2026江西吉安市井冈山垦殖场农产品开发有限责任公司面向社会招聘3人考试参考试题及答案解析
- 2026广西南宁马山县人民法院招聘1人考试备考题库及答案解析
- 胺碘酮的儿科应用
- 2025浙江杭州余杭水务有限公司招聘36人考试备考题库及答案解析
- 2026江西晶昊盐化有限公司专业技术技能人才(第二次)招聘6人考试备考试题及答案解析
- UL1059标准中文版-2019接线端子
- 蜜雪冰城转让合同
- CT及MR对比剂种类、临床应用及常见副反应
- 《老年人辅助器具应用( 第2版)》高职全套教学课件
- 北斗卫星导航系统在交通运输行业的应用(每日一练)
- DL-T5191-2004风力发电场项目建设工程验收规程
- 酒店楼层管理制度
- 葫芦巴碱在中药药理研究
- 晶体渗透压与胶体渗透压讲解
- 年项目经理讲安全课
- 部编人教版四年级下册小学语文全册教案(教学设计)(新课标核心素养教案)
评论
0/150
提交评论