VisualBasic程序设计语言基础.ppt

上传人:tia****nde 文档编号:12806496 上传时间:2020-05-25 格式:PPT 页数:44 大小:619KB
返回 下载 相关 举报
VisualBasic程序设计语言基础.ppt_第1页
第1页 / 共44页
VisualBasic程序设计语言基础.ppt_第2页
第2页 / 共44页
VisualBasic程序设计语言基础.ppt_第3页
第3页 / 共44页
点击查看更多>>
资源描述
VisualBasic编码规则,4.1数据类型,4.2变量与常量,4.5运算符和表达式,第4章VisualBasic程序设计语言基础,4.4常用内部函数(含字符串函数),4.3变量的作用域,编码规则,(1)VB代码不区分字符的大小写,但关键字将会自动转换为大写字母开头,后续字母为小写字母。(2)一行可以书写多条语句,各语句之间用冒号“:”分隔。(3)一行书写不完的语句,可以在该行后加上续行符(由空格+下划线_组成),然后换行书写。(4)一行最多为255个字符,一条语句最多含1023个字符。(5)用户自定义的变量、过程名等,VB以第一次定义为准,其后的输入自动转换。(6)程序中可以使用标号用于程序的转向,标号为以字母开头、冒号结尾的字符串。,(7)注释行以Rem或撇号“”开头,但是只有用撇号引导的注释可以出现在语句之后。可以使用“编辑”工具栏中的“设置注释块”命令将选定的若干行语句或文字设置为注释项,也可以使用“解除注释块”命令将选定的若干行解除注释。(8)对象名命名约定:每个对象名由三个小写字母组成前缀和表示该对象作用的缩写字母组成,前缀表明对象的类型,如cmdExit为一个退出按钮,cmdEnter为一个确认命令按钮。,4.1数据类型,表4-1VisualBasic的标准数据类型,1数值型数据(Numeric),数值型数据一般分为整型数和浮点数两类。整型数分为整数(Integer)和长整数(Long),浮点数分为单精度浮点数(Single)和双精度浮点数(Double)。有时也把货币型数据(Currency)和字节型数据(Byte)划归数值型数据。,1)整数(Integer),整数是不带小数点和指数符号的数,在机器内部以2字节(双八位)二进制码形式表示。VB中用n%来表示整数,其中%为整数的类型符,可以省略。如-123%、123%都表示整数。,2)长整数(Long)整数的最大值为32767,大于此数,程序运行时就会因为溢出产生中断。此时可使用长整数。长整数用4字节(四个八位)二进制数存储,可以表示更大的整数,其取值范围为-21474836482147483647。VB中用n如果在窗体模块中定义,则必须在“Type”关键字前面加上“Private”.,例如,当在窗体模块中定义上面的记录类型时,应改为:PrivateTypeTypeDemoGenvar.Num1Genvar.Num2Genvar.VarEndType4.3变量的作用域变量的作用域指的是变量的有效范围,即变量的“可见性”.定义了一个变量后,为了能正确地使用变量值,应当明确可以在程序的什么地方访问该变量.4.3.1局部变量与全局变量如前所述,VisualBasic应用程序由3种模块组成,即窗体模块(Form)、标准模块(Module)和类模块(Class).本书不介绍类模块,因此应用程序通常由窗体模块和标准模块组成.窗体模块包括事件过程(EventProcedure)、通用过程(GeneralProcedure)和声明部分;而标准模块由通用过程和声明部分组成.如同4.3所示.,图4.3VisualBasic应用程序的构成根据变量的定义位置和所使用的变量定义语句的不同,VisualBasic中的变量可以分为3类,即局部(Local)变量、模块(Module)变量及全局(Public)变量,其中模块变量包括窗体模块变量和标准模块变量.各种变量位于不同的层次.,声明部分(Declaration)窗体模块通用过程(GeneralProcedure)(Form)事件过程(EventProcedure)应用程序(Applicayion)声明部分标准模块(Module)通用过程,1.局部变量在过程(事件过程或通用过程)内定义的变量叫做局部变量,其作用域是它所在的过程.局部变量通常用来存放中间结果或用作临时变量.某一过程的执行只对该过程内的变量产生作用,对其他过程中相同名字的局部变量没有任何影响.因此,在不同的过程中可以定义相同名字的局部变量,它们之间没有任何关系.如果需要,则可以通过“过程名.变量名”的形式分别引用不同过程中相同名字的变量.局部变量在过程内用Dim、Static定义,例如:SubCommandl_Click()DimTempnumAsIntegerStaticTotalAsDoubleEndSub在上面过程中,定义了两个局部变量,即整型变量Tempnum和双精度静态变量Total.,2.模块变量(窗体变量和标准模块变量)窗体变量可用于该窗体内的所有过程.,一个窗体可以含有若干个过程(事件过程或通用过程),这些过程连同窗体一起存入窗体文件(.frm)中.当同一窗体内的不同过程使用相同的变量时,必须定义窗体层变量.在使用窗体层变量前,必须先声明,也就是说,窗体层变量不能默认声明.其方法是,在程序代码窗口“对象”框中选择“通用”,并在“过程”框中选择“声明”,然后就可以在程序代码窗口中声明窗体层变量.标准模块中模块层变量的声明和使用与窗体模块中窗体层变量类似.标准模块是只含有程序代码的应用程序文件,其扩展名为.bas.在默认情况下,模块级变量对该模块中的所有过程都是可见的,但对其他模块中的代码不可见,模块级变量在模块的声明部分用Private或Dim声明.例如:PrivateintTempAsIntege或DimintTempAsIntege,在声明模块级变量时,Private和Dim没有什么区别,但Private更好些,因为可以把它和声明全局变量的Public区别开来,使代码更容易理解.3.全局变量全局变量也称全程变量,其作用域最大,可以在工程的每个模块、每个过程中使用.和模块级变量类似,全局变量也在标准模块的声明部分中声明.所不同的是,全局变量必须用Public语句声明,不能用Dim语句声明,更不能用Private语句声明;同时,全局变量只能在标准模块中声明,不能在过程或窗体模块中声明.,4.3.2默认声明用Dim和Public语句可以定义局部变量、模块级变量和全局变量.对于局部变量来说,也可以在需要时直接给出变量名.变量的类型可以用类型说明符(%、&、!、#、$、)来标识.如果没有类型说明符,VisualBasic把该变量指定为变体数据类型.例如,假定在窗体上建立了一个命令按钮,定义单击(Click)的事件过程如下:SubCommandl_Click()Answer=InputBox$(“Areyoustudent?”)IfAnswer=“Yes”thenMsgBox“Heisastudent”ElseMsgBox“Heisnotastudent”EndifEndSub这里的InputBox$和MsgBox是VisualBasic中的函数和语句,将在下一章介绍它们的用法.在上面的事件过程中,变量Answer没有用Dim语句定义,而是默认定义为局部变量.,默认定义的变量不需要使用Dim语句,因而比较方便,并能节省代码,但有可能带来麻烦,使程序出现无法预料的结果,而且较难查出错误.为了安全起见,最好能显式地声明程序中使用的所有变量.默认声明一般只适用于局部变量,模块级变量和全局变量必须在代码窗口中用Dim或Public语句显式声明.VisualBasic不是强制类型语言,但提供了强制用户对变量进行显式声明的措施,这可以通过“选项”对话框来实现.其操作是,执行“工具”菜单中的“选项”命令,打开“选项”对话框,选择该对话框中的“编辑器”选项卡,在该对话框中选择“要求变量声明”项,如图4.4所示,然后单击“确定”按钮.,4.4.1数学运算函数,表数学函数,(2)求ASC码值Asc函数用来求一个字符串中首字符的ASC码值.语法格式为:Asc(string)参数string可以是任何有效的字符串表达式。如果string没有包含任何字符,则在运行时会产生错误。(3)求ASC码字符Chr$函数求一个ASC码值所对应的ASC码字符。其语法格式为:Chr$(charcode)参数charcode是一个用来识别某字符的Long型数。charcode的正常范围为0255。0到31之间的数字与标准的非打印ASCII代码相同。例如,Chr(10)可以返回换行字符。,(4)字符串转换为数值Val函数的作用是返回包含于字符串内的数字,字符串中是一个适当类型的数值。语法格式为:Val(string)(5)数值转换为字符串Str$函数的作用是将一个数值表达式转换为一个字符串,且表达式的类型不变。其语法格式为:Str$(number)参数number为一Long型数值表达式,其中可包含任何有效的数值表达式。当一数字转成字符串时,总会在前头保留一空位来表示正负。如果number为正,返回的字符串包含一前导空格暗示有一正号。使用Format函数可将数值转成必要的格式,如日期、时间、货币或其他用户自定义格式。与Str$不同的是,Format函数不包含前导空格来放置number的正负号。,2.取整函数Int和Fix,Int和Fix函数的作用都是返回参数的整数部分.其语法格式为:Int(number)Fix(number)参数number是Double或任何有效的数值表达式.如果number包含Null,则返回Null。二者的区别在于,Fix函数去掉一个浮点数的小数部分,保留其整数部分.而Int函数求不大于自变量的最大整数.,3.数制转换函数,Hex$函数的作用是将一个十进制数转换成一个十六进制数.Oct$函数的作用是将一个十进制数转换成一个八进制数。语法格式为:Hex$(number)Oct$(number)说明:参数number为任何有效的数值表达式或字符串表达式;如果number不是一个整数,那么在执行前会先被四舍五入成最接近的整数。,1.算术运算符,算术运算符用于数学计算,VB有8个算术运算符(其中减号运算符和取负运算符形式相同),在这8个算术运算符中,只有取负“”是单目运算符,其它均为双目(需要两个运算量)运算符。表3-3按优先级别的高低列出了算术运算符。,表算术运算符,2.字符串运算符,字符串运算符只有“&”和“+”两个,如表3-4所示,表字符串运算符,3.关系运算符,关系运算符属于双目运算符,用来对两个表达式的值进行比较,比较的结果为逻辑值,即若关系成立则返回True,否则返回False。在VB中,分别用-1和0表示True和False。表3-5列出了VB中的关系运算符。,表关系运算符,4.逻辑运算符,逻辑运算符的作用是将操作数进行逻辑运算,结果是逻辑值True或False。逻辑运算符中,除Not为单目运算符外,其它都为双目运算符。,表逻辑运算符,4.5.2表达式1表达式概念表达式是由变量、常量、运算符、函数和圆括号,按一定的规则组成的式子,表达式运算结果的类型由参与运算的数据类型和运算符共同决定。2表达式的种类根据表达式中运算符的类别,可以将表达式分为算术表达式、字符串表达式、日期表达式、关系表达式和逻辑表达式等。3表达式的书写规则(1)每个符号占1格,所有符号都必须并排写在同一行上,不能出现上标和下标。(2)不能按常规习惯省略乘号(*),如:2x要写成2*x。(3)只能使用小括号(),且必须配对。(4)不能出现非法的字符,如。,4表达式中不同数据类型的转换,5运算符的优先级,如果表达式中操作数具有不同的数据精度,则将较低精度转换为操作数中精度最高的数据精度,即按Integer、Long、Single、Double、Currency的顺序转换,且Long型数据和Single型数据进行运算时,结果总是Double型数据。,当表达式中存在多种运算符共存时,按如下由高到低的顺序进行运算:(1)首先计算函数(2)然后进行算术运算:幂运算负数乘除整除取模加减字符串连接(3)再进行关系运算(=,=)(4)最后进行逻辑运算NotAndOrXorEqvImp,
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!