第4章计算机基础_第1页
第4章计算机基础_第2页
第4章计算机基础_第3页
第4章计算机基础_第4页
第4章计算机基础_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

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

文档简介

1、第4章 Visual Basic程序设计基础本章要求nVB代码的书写规则n赋值语句、注释语句、结束语句、暂停语句nVB数据的输入/输出方法n顺序结构程序设计方法nIF语句、Select Case语句nWhile/Wend、Do/Loop、For/Next语句,Exit Do、Exit For语句n分支/循环的嵌套n常见算法程序设计目录n4.1 VB程序代码的书写规则n4.2 基本语句介绍n4.3 数据的输入与输出n4.4 顺序结构程序设计n4.5 选择结构程序设计n4.6 循环结构程序设计4.1 VB程序代码的书写规则nVB还可以按照一定的格式化规则对所输入的语句进行处理,例如,关键字会格式化

2、为首字母大写,其余字母小写;运算符前后自动加空格等。所以输入关键字、函数名等时,可以不必区分大小写;n一个语句行的最大长度为1023个字符;n如果一条语句太长,可以使用续行符下划线“_”将其分写在多行上,续行符与它前面的字符之间至少要有一个空格;n如果多条语句写在一行上,各语句之间要以冒号“:”隔开。4.2 基本语句介绍n4.2.1 赋值语句 n4.2.2 注释语句n4.2.3 结束语句n4.2.4 暂停语句4.2.1 赋值语句【格式】 let 变量名=表达式 let 对象名.属性名=表达式【功能】先计算“=”右边的表达式的值,然后将该值赋给“=”左边的变量或属性。 n(1)变量在被第一次赋值

3、之前,具有系统默认的初始值,不同类型的变量,其默认的初始值不同。变量被赋值后,则变量原来的值被覆盖掉。所以某个变量被多次赋值后,只保留最后一次赋的值。n(2)如果程序中有变量强制声明语句“Option Explicit”,而被赋值的变量未声明,则该赋值语句被执行时,会出现编译错误“变量未定义”。n(3)如果程序中没有变量强制声明语句“Option Explicit”,而被赋值的变量未声明,则该赋值语句被执行时,系统将创建该变量(类型为Variant类型,作用域是过程级),并将表达式的值赋给它。 n(4)如果为对象的属性赋值,则对象必须存在且具有该属性。输入语句时,只要键入已存在的对象名和圆点,

4、系统就会自动显示属性列表供选择,所以先建立对象,再输入程序,可以防止命名上的不一致或输入错误。如果缺省对象名,只给出属性名,则默认对象是指当前窗体。n(5)在实际应用中,也可以只给出对象名,不给出属性名,这时将为该对象的“缺省属性”赋值。“缺省属性”的含义即在语句中不给出属性名时,默认的操作属性。不同种类的对象,其缺省属性也不同, n(6)在使用赋值语句时,要特别注意被赋值的变量(或属性)与赋值号右边表达式的类型。可以将任意类型的表达式赋给Variant类型变量;除此以外,我们通常要求二者类型一致,这样可以使程序更加清晰规范;但在很多情况下,VB都可以自动将表达式转换为被赋值变量的类型进行赋值

5、,使用起来灵活方便,但一定要搞清楚常用数据类型的自动转换规则。 n例4-14.2.2 注释语句【格式1】Rem 注释内容【格式2】注释内容n注释语句是一个非执行语句,它的主要作用是为程序加上必要的注解,增加程序的可读性。注释内容可以是任意可显示的字符,在执行程序时,注释将被过滤掉。n注释语句还有一个作用,在调试程序时,为了找出错误的位置,可以先将部分语句加上注释符号,暂不执行,仅执行另一部分语句。需要时,去掉注释符号,即可执行。n(1)格式1中,关键字Rem与注释内容之间需要有空格;格式2中,单引号“”与注释内容之间则不需要空格。输入程序时,注释内容被自动格式化为绿色字体。n(2)格式1和格式

6、2既可以放在语句行的开始处,为一段程序做注释,也可以放在语句的后面,为一条语句做注释。n(3)如果注释内容有很多行,则每行前都要有注释符(Rem或单引号),这叫做“块注释”。 4.2.3 结束语句【格式】End【功能】可放在程序中的任何位置,用来终止整个程序的执行,并关闭已打开的文件并清除变量。 End Sub语句用来终止一个Sub过程的执行,对每个Sub过程只能有一个,End语句用来终止整个应用程序的执行,必须放在过程体内,可以有多个。 4.2.4 暂停语句【格式】Stop【功能】在程序解释执行时,Stop语句使程序进入中断模式,以便对程序进行检查和调试。4.3 数据的输入与输出n4.3.1

7、 数据输入函数InputBoxn4.3.2 数据输出方法Print和清除显示内容方法Clsn4.3.3 MsgBox函数和MsgBox语句4.3.1 数据输入函数InputBox【格式】InputBox(prompt, title , default , xpos , ypos , helpfile, context)InputBox【功能】显示一个对话框,对话框由标题、提示信息、一个文本框、两个按钮(“确定”和“取消”)组成。用户可以在文本框中输入数据,当按“确定”按钮或回车键时,文本框中所输入的数据就作为返回值带回到程序中的函数调用处,并关闭对话框;当按“取消”按钮或ESC键时,文本框中所

8、输入的数据无效,返回一个空字符串(不包含任何字符、长度为0的字符串),并关闭对话框。n【参数说明】n(1)prompt:该参数是必选项,为字符型表达式,对应于对话框中的提示信息。其最大长度为1024个字符,提示信息可以自动换行,如果想在指定位置换行,可以在该字符表达式中人工插入回车符(函数调用Chr(13)返回回车符,详见后面章节)。n(2)title:该参数是可选项,为字符型表达式,对应于对话框中的标题,省略该项时,标题为当前工程名。n(3)default:该参数是可选项,为字符型表达式,对应于对话框中的文本框内显示的信息,作为用户输入信息的默认值。省略该选项时,为空串。n(4)xpos:可

9、选项,为数值表达式,成对出现,指定对话框的左边与屏幕左边的水平距离。如果省略 xpos,则对话框会在水平方向居中。n(5)ypos:可选项,为数值表达式,成对出现,指定对话框的上边与屏幕上边的距离。如果省略 ypos,则对话框被放置在屏幕垂直方向距上边大约三分之一的位置。4.3.2 数据输出方法Print【格式】对象.Print 输出项列表;|,n【说明】(1)对象可以是窗体(Form)、图片框(PictureBox)、打印机(Printer)或立即窗口(Debug)等,也就是说,调用不同对象的Print方法,可以将Print 后面的输出内容输出到窗体、图片框、打印机或立即窗口等各种对象上。对

10、象缺省时,默认指当前窗体,在前面例子中,这种调用方式已使用过多次。n(2)输出项列表是用分隔符隔开的一组输出项,分隔符可以是空格、分号或逗号,输出项可以是表达式、Tab(n)函数或Spc(n)函数,Print方法调用语句末尾可以是分号、逗号或没有标点。n(3)我们把在对象上输出信息时的当前位置叫做“输出指针”或“指针”,在第一次使用Print方法输出时,指针指向第一行第一列,当输出不同的输出项或分隔符时,输出指针将按照以下规则来移动。n a) 输出表达式:先计算表达式的值,然后再输出,所以Print方法兼有运算和输出双重功能。当输出数值表达式时,第一位即指针当前位置是符号位,若为负数,则输出减

11、号“-”,若为非负数,则为空格。输出完各表达式的值,指针再输出一空格即右移一位;输出字符型、逻辑型数据时,则没有符号位,输出完成时,指针也不右移一位;输出日期型数据时,没有符号位,但输出完成,指针右移一位; nb) 输出Tab(n)函数(n为数值表达式):指针将移到第n列;如果当前位置已超过n,则移到下一行第n列; nc) 输出Spc(n)函数(n为数值表达式):指针将右移n列,即输出n个空格。n d) 输出分号或空格:指针不移动;n e) 输出逗号:指针移到下一分区,14个字符为一分区; nf) 调用语句末尾不使用逗号或分号:指针移到下一行;nTab函数和Spc函数只能与Print结合使用,

12、而Space(n)函数是一个普通的字符串函数,其功能是返回由n个空格组成的字符串,当与Print结合使用时,效果与Spc(n)相同。清除显示内容方法Cls【格式】对象.Cls 对象可以是窗体(Form)、图片框(PictureBox),缺省为当前窗体。【功能】清除Form、PictureBox对象上用Print方法输出的内容。4.3.3 MsgBox函数【格式】MsgBox(prompt, buttons , title , helpfile, context)【功能】显示一对话框,用于输出简短的提示信息,并通过对话框中的按钮接收用户的不同选择。 【说明】(1)prompt参数:必选项,为字符

13、串表达式,指定显示在对话框中的消息。(2)buttons参数:可选项,为数值表达式,是值的总和,指定显示按钮的数目及形式、使用的图标样式、缺省按钮是什么以及消息框的强制回应等。如果省略,则buttons的缺省值为0。见课本表4-1(3)title参数:可选项,在对话框标题栏中显示的字符串表达式。如果省略 title参数,则将工程名放在标题栏中。(4)返回值:MsgBox函数显示的对话框中,可以显示7种按钮的6种不同组合状态,当用户选择不同按钮时,函数返回1-7之间的一个长整数值。见课本表4-2。MsgBox语句 如果只是要输出简单的信息,而不需要接收用户的选择作为返回值,使用MsgBox语句会

14、更加方便。【格式】MsgBox prompt, buttons , title , helpfile, context 这是一条独立的语句,所以各参数与MsgBox以空格隔开,而不是放在小括号内。各参数的含义与MsgBox函数完全一样,只是没有返回值。4.4 顺序结构程序设计n顺序结构是程序设计中最简单、最常用的基本结构,是所有程序的主体结构,顺序结构程序是按照语句的书写顺序依次执行。n例4-2 、例4-34.5 选择结构程序设计n4.5.1 块IF语句n4.5.2 行IF语句n4.5.3 IF语句中的ElseIf语句n4.5.4 多情况语句Select Casen4.5.5 条件判断函数II

15、F4.5.1 块IF语句n【格式】 If 条件表达式 Thenn 语句组1n Elsen 语句组2n End If【说明】(1)应是一个逻辑表达式或关系表达式,它的值是True或False。如果给出的是数值表达式、字符型表达式等,系统会自动将非逻辑值转换为逻辑值。当为数值表达式时,非0值为True,0为False;当为字符型表达式时,字符串“True”转换为逻辑值True,字符串“False”转换为逻辑值False,如果表达式的值为其他字符串,将会出现“类型不匹配”的错误信息提示。此处提到的转换规则适用于本章后面需要逻辑型的各语句。(2)和是一组合法的VB语句。 n(3)If与End If必须

16、成对出现,关键字Then之后必须换行。Else和End If要单独占一行,如果与其它语句写在一行上,必须用冒号隔开。n(4)该语句的含义是:如果的值为True,则执行,然后执行End If后面的语句;如果的值为False,则执行,然后执行End If后面的语句。如果没有Else 及选项且的值为False,则什么都不执行,直接执行End If后面的语句。4.5.2 行IF语句【格式】If 条件表达式 Then 语句组1 Else 语句组2 行IF语句与块IF语句的区别是:没有End If关键字且必须把所有内容写在一行上。【说明】(1)和如果包含多条语句,必须用冒号分隔。(2)行If语句适用于比较

17、简单的选择结构程序。例4-4 、例4-54.5.3 IF语句中的ElseIf语句n【格式】 If Thenn n ElseIf Thenn n n ElseIf Thenn n Elsen n End If【说明】(1) 执行过程首先判断条件表达式1,如果其值为True,则执行语句组1,然后执行End If后面的语句;如果条件表达式1的值为False,则判断条件表达式2,如果其值为True,则执行语句组2,然后执行End If后面的语句;如果条件表达式2的值也为False,再继续往下判断其他条件表达式的值;如果所有条件表达式的值为False,才执行语句组N+1(2)Else部分可以省略,当省略

18、Else部分时,如果所有条件表达式的值为False,则直接执行End If后面的语句。(3)ElseIf是一个关键字,中间不能有空格。例4-5、例4-64.5.4 多情况语句Select Casen【格式】 Select Case 测试表达式n Case 表达式表1n 语句组1n Case 表达式表2n 语句组2n n Case 表达式表Nn 语句组Nn Case Elsen 语句组N+1n End SelectnSelect Case语句的执行过程:首先求的值V,如果V与相匹配,则执行,然后执行End Select后面的语句;如果与不匹配,则继续匹配下一表达式表 ,若有匹配的,则执行它对应的

19、。【说明】(1)可以是数值型、字符型、日期型、逻辑型等各种类型的表达式;(2)应为下面4种形式之一:与同类型的一个表达式,可以是数值型、字符型、日期型、逻辑型等各种类型,例如: Case Y+5;一个表示范围的式子,形式为:表达式1 To 表达式2,其中的和可以是同类型的表达式,但的值必须小于等于的值,否则即使在范围内,也不能匹配成功(并不出错);例如:Case 60 To 100,Case “nuts” to “soup”n一个判定某种关系的式子,形式为:Is 表达式。注意两点:第一,此处的Is不同于关系运算符Is,第二此处的不能是Is或Like;n例如:Case Is100n(3)测试表达

20、式的值V与某表达式表相匹配的含义是:或者V的值与该表达式表中的某个表达式的值相等,或者V属于该表达式表中某个式子所表示的范围,或者V的值使该表达式表中某个判定关系的式子成立。如果以上三者都不成立,则测试表达式与该表达式表不匹配。n(4)Select Case语句中各可以是任何合法的VB语句,所以可以嵌套使用。n(5)书写该语句时,Select与Case之间、 End与Select之间以及Case与之间都必须有空格。n例4-7 、例4-84.5.5 条件判断函数IIF【格式】IIF(条件,表达式1,表达式2)【说明】(1)该函数的三个参数都是必选项;(2)是一个关系表达式或逻辑表达式;其值为Tr

21、ue或False;(3)和可以是任意类型的表达式,类型也可以不同;(4)IIF函数可以嵌套使用。n当为True时,IIf函数的返回值为;当为False时,IIf函数的返回值为; n例如:Print IIf(cj 60, 不及格, IIf(cj 75, 及格, IIf(cj 90, 良好, 优秀)4.6 循环结构程序设计n4.6.1 WhileWend循环语句n4.6.2 DoLoop循环语句n4.6.3 For循环语句n4.6.4 循环的嵌套n4.6.5 应用举例4.6.1 WhileWend循环语句【格式】 While 条件 语句组 Wend 首先判断条件是否为True,若是,则执行一遍循环

22、体,然后转到循环开始处,再判断条件若某一次判断时条件为False,则执行Wend后面的语句。 【说明】(1)为逻辑表达式或关系表达式,其值为True或False。若为其他类型,系统会自动将非逻辑值转换为逻辑值。转换规则参见If语句。(2)如果首次判断时,即为False,则循环体一次也不执行。(3)如果首次判断为True,且不能变为False,则循环体会无限次地执行下去,程序将不能终止,这称为“无限循环”或“死循环”。编写程序时,必须避免出现死循环。(4)循环体是一条或多条VB语句,如果循环体中又包含循环语句,则称为循环的嵌套。 例4-9 、例4-104.6.2 DoLoop循环语句n【格式1】Do While 条件n 语句组1n Eixt Don 语句组2n Loopn【格式2】Do n 语句组1n

温馨提示

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

评论

0/150

提交评论