《顺序程序设计结构》由会员分享,可在线阅读,更多相关《顺序程序设计结构(17页珍藏版)》请在金锄头文库上搜索。
1、第 4 章 顺序程序设计结构( P66)通过前面章节的学习,我们知道 Visual Basic 采用的是事件驱动的编程机制,即程序在运行时,过程的执行顺序是由事件的触发顺序来控制的。但不管事件过程的代码是简单还是复杂,其编程思路仍遵循结构化程序设计的方法,即用流程控制语句来控制程序的执行。结构化程序设计方法有三种基本结构,它们是顺序结沟、选择结构和循环结构。如果程序中没有控制语句,则各条语句将按照在程序中出现的位置依次执行,这就是最简单的顺序结构。在顺序结构中,各程序段按照出现的先后顺序依次执行。本章将介绍几种基本顺序结构的语句和方法。41 赋值语句赋值语句是最常用也是最基本的语句,其作用是将
2、右边表达式的值赋给左边的变量。411 赋值语句的语法格式赋值语句的语法格式如下:Let 变量名=表达式Let 对象名.属性名=表达式其中,关键字 Let 为可选项,通常都省略该关键字。例如,给整型变量 x 赋值 67:Dim x As IntegerLet x=67例如,给文本框的 Text 属性赋值欢迎使用 Visual Basic 60!的语句表达式: Text1.Text=欢迎使用 Visual Basic 60!412 赋值语句的功能将表达式的值赋值给变量名或指定对象的属性,一般用于给变量赋值或对控件设定属性值。例如:Form1.width=300Form1.captton=输入框Te
3、mp=20Text1.Text=欢迎使用 Visual Basic 60413 使用注意事项(1)Let 是赋值语句的关键字,是一个可选项,通常省略。(2)当表达式为数值型且与变量的精度不相同时,强制转换成左边变量的精度。例如:iA=47 iA 是整型变量,iA 中的结果是 5(3)当表达式是数字字符串,左边变量是数值类型时,自动转换成数值类型再赋值:但当表达式有非数字字符或空串时,则出错。例如;n%=123 n 中的结果是 123,与 n%=Val(123)效果相同n%=1a23 出现“类型不匹配”的错误(4)赋值语句中的“= ”与关系运算符中的 “=”的作用截然不同。例如:A=7=9其中,
4、第一个“=”是赋值运算符,第二个“=”是关系运算符。赋值语句 a=b 和 b=a 是两个结果不同的赋值语句;而在关系表达式中 a=b 和 b=a 是两种等价的表示方式。赋值号左边只能是变量,不能是表达式、常量。如下面的赋值语句sin(x)=x/y 左边是表达式5=sqr(s)+a+b 左边是常量x+y=a+b 左边是表达式是错误的(5)不能在同一语句中给多个变量赋值。例如:a=b=c=l我们的本意是给 a、b、c 赋初值 1,书写上没有错误。但 Visual Basic 编译时,将右边两个“=”作为关系运算符处理,先进行 b=c 的的比较,结果为 true(-1);接着进行 True=1的比较
5、,结果为 False(0);最后将 false 的值赋给 a。(6)当逻辑型赋值给数值型时,True 转换为-1 ,False 转换为 0:反之,当数值型赋给逻辑型时,非 0 转换为 True,0 转换为 False。(7)任何非字符类型的值赋给字符变量时,系统自动转换为字符类型。注意:在 Visual Basic 中,如果变量未被赋值而直接引用,则数值型变量的值为 0,字符型变量的值为空串” ,逻辑型变量的值为 False。414 With 结构With 结构用于对一个单一对象或用户定义对象执行一系列的语句,其格式为:With 对象语句块End With使用 With 结构可以对某个对象执行
6、一系列的语句,而不用重复指出该对象的名称。例如,要改变窗体对象的多个属性,在 With 结构中进行属性的赋值如下:With Form1.Height=2000.Width=3000.Caption=这是一个标题End With当程序一旦进入 With 块,对象就不能改变。因此不能用一个 With 语句来设置多个不同的对象,但 With 块可以嵌套。42 注释、暂停与程序结束语句421 注释语句为了提高程序的可读性,通常应在程序的适当位置加上必要的注释。Visual Basic 中的注释是“Rem”或一个撇号“ ”,其格式为:Rem 注释内容或注释内容说明:(1)注释语句是非执行语句,仅对程序的
7、有关内容起注释作用,它不被解释和编泽。在Rem 关键字与注释内容之间要加一个空格。例如:Rem 这是一个标题这是一个标题(2)任何字符都可以放在注释行中作为注释内容。注释语句通常放在过程、模块的开头作为标题,也可以放在执行语句的后面。在这种情况下,注释语句必须是最后一个语句,且 Rem 前必须用冒号(:) 与语句隔开。但若用撇号,则在其他语句后不必加冒号。例如:Text1.text=Good morning! This is a testText1.text=Good morning! Rem This iS atest(3)注释语句不能放在续行符的后面。422 暂停语句(Stop)Stop
8、语句用宋暂停程序的执行,使用 Stop 语句,就相当于执行“运行”菜单中的“中断”命令。其格式为:StopStop 语句的主要作用是把解释程序置为中断模式,以便于对程序进行检查和调试。可以在程序中的任何地方设置 Stop 语句,当执行 Stop 语句时,将自动打开立即窗口。一旦应用程序通过编译并能运行,则不需要解释程序的辅助,也不需要进入中断模式。因此,程序调试结束后,生成可执行文件之前,应删去代码中所有的 Stop 语句。423 结束语句(End)End 语句通常用来结束一个程序的执行。其格式为:End当在程序中执行 End 语句时,将终止当前程序,重置所有变量,并关闭所有的数据文件。可以把
9、它放在事件过程中,例如:Sub Command1_Click()EndEnd sub该过程用来结束程序,即当单击命令按钮时,结束程序的运行。End 语句除了用来结束程序外,在不同的环境下还有其他用途,例如:End Sub 结束一个 Sub 过程End Function 结束一个 Function 过程End if 结束一个 If 语句块43 数据的输出在第 2 章中,我们学习了使用标签、文本框等控件来显示数据。Visual Basic 也可以用Print 来输出数据,但它是作为 “方法”宋使用的。Print 方法可以用于在窗体、图片框和打印机以及 Debug 窗口上显示数据。431 Print
10、 方法1语法格式对象名. PrInt |,|;其中,表达式列表是显示或打印的输出项。如果省略,则显示(输出) 一个空行。例如:Form1.Print Visual Basic 在 Form1 窗体中显示“Visual Basic”Picture1.Print Visual Basic 在图片框 Picture1 中显示“Visual Basic”Print Visual Basic 在当前窗体中显示“Visual Basic”2使用说明(1)对象名 可以是窗体名、图片框名、打印机名,也可以是立即窗口“Debug” 。若省略对象,则表示在当前窗体上输出。用 Print 方法在图片框和立即窗口对象
11、中输出与在窗体对象中输出完全相同。(2)表达式:可选项。可以是一个或多个任意数值、字符串常量、变量或表达式。当有多个表达式时,要用分隔符( 逗号、分号) 隔开,显示的字符串内容要用双引号括起来;当表达式缺省时,则屏幕显示一个空行。(3)标准显示输出语句的输出格式分为标准输出格式和紧凑输出格式。Visual Basic 把输出的每一行以 14 个字符宽度划分为一个区段,每个数据项占一个区段的位置。这种输出格式排列整齐,适用于数值显示的情况。紧凑输出格式在输出时,对于数值型数据,前面有一个符号位,后面有一个空格;对于每个字符串,各个数据项之间没有间隔,适用于用若干个字符串显示连续的结果。(4)在标
12、准显示输出语句中,如果各数据项之间用逗号隔开,则按标准输出格式显示数据;若显示语句中各数据项之间用分号或空格作为分隔符,则按紧凑输出格式输出数据;若 Print 语句的末尾使用了逗号或分号,则表明显示数据不换行,下一个 Print 语句仍在该行输出;当输出的数据超过显示行的宽度时,多余的数据自动输出到下一行。(5)Print 方法具有计算和输出的双重功能,对于表达式,则先计算后输出。例如:x=5:y=10Print (x+y)/3输出结果为 5。例 4-1写出下列语句的执行结果。Print 23+22=;Print 23+22Print 23+22=,Print 23+22运行结果为:22+2
13、3=4522+23= 45例 4-2下列程序段执行结果如图 4-l 所示。Private Sub Form_Click()x=5:y=6:z=7Print x=;x,y=;y,z=;zPrintPrint x;y;z;Visual Basic 60End Sub图 4-1 程序执行结果432 与 Print 有关的一些标准函数为了使信息按指定的格式输出,Visual Basic 提供了几个与 Print 方法配合使用的函数,包括 Tab、Spc 、Space 等。其中 Space 函数已经在上一章中介绍过,本节主要介绍 Tab 和Spc 函数。1Tab 函数语法格式:Tab(n)Tab 函数把
14、光标移到由参数 n 指定的位置,并从该位置输出信息。要输出的信息放在Tab 函数的后面,并用分号隔开。例如:Print Tab(25);1250将在第 25 个位置输出数值 1250。说明:(1)参数 n 为一数值表达式,其值为整型值,它表示下一个输出位置的列号。通常最左边的列号为 l,如果当前的显示位置已经超过 n,则自动下移一行,输出的数据从当前的显示位置开始移动 n 列输出数据。(2)当在一个 Print 方法中有多个 Tab 函数时,每个 Tab 函数对应一个输出项,各输出项之间用分号隔开。例 4-3 设有某班级的部分学生名单如下:编程序显示上面表格中的数据。程序如下:Private
15、Sub Form1_Click()FontName=楷体 GB2312 显示输出何种字体FontSize=12 显示输出字体大小Print 姓名;Tab(8);年龄;Tab(16);籍贯;Print Tab(24);专业PrintPrint 黎明;Tab(8);18;Tab(16); 北京;Tab(24); 计算机Print 张华;Tab(8);l7;Tab(16);上海;Tab(24);牛物技术Print 刘娟;Tab(8);19;Tab(16); 南京;Tab(14); 经济学Print 杨萍;Tab(8);19;Tab(16); 云南;Tab(24); 外浯End Sub程序运行后,单击窗体内任一位置,将显示如图 4-2 所示的运行结果。2Spc 函数语法格式:Spc(n)在 Print 的输出中, Spc 函数是在输出下一个表达式之前首先跳过 n 个空格。说明:(1)参数 n 为一数值表达式,其取值范围为 032767 之间的整数。 Spc 函数与输出项