VB语法市公开课特等奖市赛课微课一等奖课件_第1页
VB语法市公开课特等奖市赛课微课一等奖课件_第2页
VB语法市公开课特等奖市赛课微课一等奖课件_第3页
VB语法市公开课特等奖市赛课微课一等奖课件_第4页
VB语法市公开课特等奖市赛课微课一等奖课件_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

VB语法基础本章内容及要求:1.

熟悉VB程序中代码和语句书写规则;2.

掌握VB数据类型;掌握VB

运算符和表示式使用;掌握VB基本语句使用方法第1页VB语言字符集及编码规则编码规则与约定

(一)编码规则1.VB代码中不区分字母大小写。2.同一行上能够书写多条语句,但语句间要用冒号“:”分隔。3.若一个语句行不能写下全部语句,或在尤其需要时,能够换行。换行时需在本行后加入续行符,1个空格加下划线“_”。4.注释以Rem开头,也能够使用单引号“'”,注释内容可直接出现在语句后面。

5.在程序转向时需用到标号,标号是以字母开始而以冒号结束字符串。第2页(二)约定1.为了提升程序可读性,对于VB中关键字其首字母大写,其余字母小写2.注释业利于程序维护和调试

Rem开始或单撇‘。比如:‘Th从sisaVBREMThisisaVB

在6.0中新增了“块注释/取消块注释”(视图/工具栏/编辑)第3页数据类型标准数据类型第4页自定义类型

在模块级别中使用,用于定义包含一个或多个元素用户自定义数据类型。使用形式:

Type自定义类型名 元素名[([下标])]As类型名 元素名[([下标])]As类型名

...EndType

见下例第5页TypeStudent XhAsSting XmAsString XbAsString NlAsInteger ScoreAsSingleEndType

比如:对于一个学生“学号”、“姓名”、“性别”、“年纪”、“入学成绩”等数据,为了处理数据方便,经常需要把这些数据定义成一个新数据类型(如Student类型)。第6页常量和变量常量及其申明有些数字我希望在程式一开始时候就决定,之后就不再改变比如:圆周率=3.14只打3.14有时候会造成日后不易维护常量定义Const常量名称

=数值比如:ConstPi=3.14下次想要更精确时候,能够直接改成ConstPi=3.1415,而不用每个用到地方都需要改动第7页变量二.变量申明

1.用Dim语句显式申明变量形式:Dim变量名[AS类型] Dim变量名[类型符]

例 DimiCountAsinteger,sumAssingle

等价于DimiCount%,sum!2.隐式申明

VisualBasic允许用户在编写应用程序时,不申明变量而直接使用,系统暂时为新变量分配存放空间并使用,这就是隐式申明。全部隐式申明变量都是Variant数据类型。VisualBasic依据程序中赋予变量值来自动调整变量类型。比如:第8页

下面是一个很简单程序,其使用变量a,b,Sum都没有事先定义。PrivateSubForm_Click()Sum=0a=10:b=20Sum=a+bPrint"Sum=";SumEndSub3.强制显式申明——OptionExplicit语句

良好编程习惯都应该是“先申明变量,后使用变量”,这么做能够提升程序效率,同时也使程序易于调试。VisualBasic中能够强制显式申明,能够在窗体模块、标准模块和类模块通用申明段中加入语句:OptionExplicit第9页变量作用域概述:

在VB中,因为能够在过程中和模块中申明变量,依据定义变量位置和定义变量语句不一样,变量能够分为:局部变量(过程级变量)窗体/模块级变量(私有模块级变量,能被本模块全部过程和函数使用)全局级变量(公有模块级变量)。第10页过程级变量——局部变量局部变量:

在过程内申明变量,只能在本过程中使用。

在过程内部使用Dim或者Static关键字来申明变量,只在申明它们过程中才能被访问或改变该变量值,别过程不可访问。所以能够在不一样过程中申明相同名字局部变量而互不影响。第11页例:PrivateSubForm_Load()Dimn%n=10EndSubPrivateSubFrom_Click()Dimn%Print“n=“;nEndSub程序运行后单击窗体,其输出结果是什么?第12页窗体/模块级变量窗体/模块级变量:

在“通用申明”段中用Dim语句或用Private语句申明变量,可被本窗体/模块任何过程访问。但其它模块却不能访问该变量。比如:在“通用申明”段申明以下变量PrivatesAsStringDimaAsInteger,bAsSingle第13页全局变量

全局变量也称公有模块级变量,在窗体模块或标准模块顶部“通用”申明段用Public关键字申明,它作用范围是整个应用程序,即可被本应用程序任何过程或函数访问。比如:

PublicaAsInteger,bAssingle第14页3种变量申明及使用规则以下表:第15页静态变量

除作用域之外,变量还有存活期,在这一期间变量能够保持它们值。在应用程序存活期内一直保持模块级变量和全局变量值。不过,对于Dim申明局部变量仅当过程执行期间存在,当一个过程执行完成,它局部变量值就已经不存在,而且变量所占据内存也被释放。当下一次执行该过程时,它全部局部变量将重新初始化。概念局部变量存活期由其定义关键词来决定。第16页局部变量申明:

Dim申明:随过程调用而分配存贮单元,变量初始化;过程体结束,变量内容自动消失,存贮单元释放。

Static申明,每次调用过程,变量保持上次调用结束时值。申明形式:

Static变量名[AS类型] StaticFunction函数过程名([参数列表])[As类型]StaticSub子过程名[(参数列表)]

注意:过程名前加Static,表示该过程内局部变量都是静态变量。第17页例5.2

有一个人编了下面一段程序,想用变量n记录单击窗体次数。PrivateSubForm_Click()DimnAsIntegern=n+1Print"已单击次数:";n&"次"EndSub分析程序运行后屡次单击窗体输出结果:

要统计单击窗体次数,怎样实现?并比较使用模块变量和静态变量差异。第18页PrivateSubForm_Click()Dimi%,isum%Fori=1To5 isum=sum(i) Printisum,

NextiEndSubPrivateFunctionsum(nAsInteger)

DimjAsInteger j=j+nsum=jEndFunction12345StaticjAsInteger结果怎样?

补充例题:第19页数组数组申明Dim数组名称(数组元素个数)As数据类型DimScore(5)AsInteger申明了一个叫Score数组这个数组有5个元素这数组5个元素都是Integer类型第20页使用数组元素数组名称(第几个元素)范例:Score(4)=3注意数组元素从0开始算,以之前例子,能够拿來使用数组元素有:Score(0),Score(1),Score(2),Score(3),Score(4)不能使用超过数组定义长度元素第21页日期型表示式日期型数据是一个特殊数值型数据,只能有下面3种情况:1.一个日期型数据能够相减:

DateB-DateA结果是一个数值型整数(两个日期相差天数)。比如:#05/08/#-#05/01/#其结果为数值:72.一个日期型数据(DateA)与一数值数据(N)可作加法运算:DateA+N其结果仍是一个日期型数据。比如:#05/01/#+7其结果为日期型数据:#05/08/#3.一个日期型数据(DateA)与一数值数据(N)可作减法运算:

DateA-N其结果仍是一个日期型数据。比如:#05/08/#-7其结果为日期型数据:#05/01/#第22页运算符和表示式一.算术运算符第23页

字符串运算符与字符串表示式字符串运算符有:&、+

。功效是字符串连接比如:

"ABCD"+"EFGHI"'结果为:ABCDEFGHI“VB”&“程序设计教程”'结果为:VB程序设计教程说明:当连接符两旁操作量都为字符串时,上述两个连接符等价。它们区分是:

+(连接运算):两个操作数均应为字符串类型;

&(连接运算):两个操作数既可为字符型也可为数值型,当是数值型时,系统自动先将其转换为数字字符,然后进行连接操作。第24页例:"100"+123'结果为

223"100"+"123"'结果为

100123"Abc"+"123"‘结果为

Abc123"Abc"+123 ‘犯错"100"&123'结果为

100123100&123'结果为

100123"Abc"&"123"'结果为

Abc123"Abc"&123'结果为

Abc123

注意:使用运算符“&”时,变量与运算符“&”之间应加一个空格。这是因为符号“&”还是长整型类型定义符,假如变量与符号“&”接在一起,VB系统先把它作为类型定义符处理,因而就会出现语法错误。第25页关系运算符与关系表示式

关系运算符都是双目运算,是用来比较两个运算量之间关系,关系表示式运算结果为逻辑量。若关系成立,结果为True,若关系不成立,结果为False。

VB中关系运算符以下表所表示。运算符含义优先级实例结果<小于所相关系运算优先级相同。低于算术运算加“+”,减“-”运算,高于逻辑非“Not”运算。15+10<20False<=小于或等于10<=20True>大于10>20False>=大于或等于"This">="That"True=等于"This"="That"False<>不等于"This"<>"That"TrueLike字符串匹配"This"Like"*is"TrueIs对象比较

第26页关系运算规则以下:(1)当两个操作式均为数值型,按数值大小比较。(2)字符串比较,则按字符ASCII码值从左到右一一比较,直到出现不一样字符为止.。例:"ABCDE">"ABRA" 结果为False(3)数值型与可转换为数值型数据比较比如:29>"189",按数值比较,结果为False。(4)数值型与不能转换成数值型字符型比较,如:77>"sdcd",不能比较,系统犯错。(5)“Like”运算符是VB6.0新增加。其使用格式为:str1Likestr2第27页逻辑运算符与逻辑表示式

Not逻辑非为单目运算符(要求一个操作数),其它为双目运算符。条件表示式1And条件表示式2条件表示式均为T结果为T

条件表示式1Or条件表示式2条件表示式有一个T结果为T第28页第29页说明:(1)逻辑运算符优先级不相同,Not(逻辑非)最高,但它低于关系运算,Imp(逻辑蕴含)最低。(2)VB中惯用逻辑运算符是Not、And和Or。它们用于将多个关系表示式进行逻辑判断。比如,数学上表示某个数在某个区域时用表示式:

10≤X<20,用VB程序中应写成:

X>=10AndX<20(3)参加逻辑运算量普通都应是逻辑型数据,假如参加逻辑运算两操作数是数值量,则以数值二进制值逐位进行逻辑运算(0当False,1当True)。

关系表示式与逻辑表示式常惯用在条件语句与循环语句中,作为条件控制程序流程走向。第30页运算符执行次序

表示式中出现了各种不一样类型运算符时,其运算符优先级以下:

算术运算符>=字符运算符>关系运算符>逻辑运算

说明:

1.当一个表示式中出现各种运算符时,首先进行算术运算符,接着处理字符串连接运算符,然后处理比较运算符,最终处理逻辑运算符,在各类运算中再按摄影应优先次序进行。

2.能够用括号改变优先次序,强令表示式一些部分优先运行。括号内运算总是优先于括号外运算。对于多重括号,总是由内到外。第31页表示式书写中需注意问题(1)运算符不能相邻。例a+-b是错误。(2)乘号不能省略。例x乘以y应写成:x*y

(3)括号必须成对出现,均使用圆括号。(4)表示式从左到右在同一基准并排书写,不能出现上下标(5)要注意各种运算符优先级别,为保持运算次序,在写VB表示式时需要适当添加括号(),若用到库函数必须按库函要求书写。如:

(b-sqr(b*b-4*a*c))/(2*a)(a+b)/(a-b)

第32页流程控制第33页判断语句IFTHENELSE基本:If条件式成立Then dosomethingEndIf扩展:If条件1成立Then dosomethingElse dosomethingEndIf第34页多个条件:If条件1成立Then dosomethingElseIf条件2成立Then dosomethingElseIf条件3成立Then dosomethingElse dosomethingEndIf第35页判断式等于A=B不等于A<>B小于A<B大于A>B大于等于A>=B小于等于A<=B第36页范例打分数网站0~50分:你完蛋了!50~60分:差一点点而已60~80分:不错嘛!80~1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论