欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > PPT文档下载
     

    第4章 基本程序设计结构.ppt

    • 资源ID:5030201       资源大小:324KB        全文页数:55页
    • 资源格式: PPT        下载积分:8
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要8
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    第4章 基本程序设计结构.ppt

    1,第4章 基本程序设计结构,本章学习目标: 1掌握赋值语句,InputBox()、MsgBox()函数; 2掌握Print方法的使用; 3理解选择结构及其特点; 4掌握常用的几 种选择结构; 5理解选择的构成及其执行过程; 6理解循环结构及其特点; 7掌握常用的几种循环结构; 8理解嵌套的构成及其执行过程。,2,4.1 顺序结构程序设计,各条语句将按照在程序中出现的位置依次执行,这就是最简单的顺序结构,3,4.1.1 赋值语句,赋值语句:将右边表达式的值赋给左边的变量。 格式: Let 变量名 = 表达式 Let 对象名.属性名 = 表达式 通常都省略Let关键字。 功能:程序在执行过程中,首先计算右边表达式的值,然后将表达式的值赋值给变量名或指定对象的属性。 例如:给整型变量x赋值67: Dim x As Integer Let x = 67,4,4.1.1 赋值语句(续),例如:给文本框的Text属性赋值“欢迎使用Visual Basic 6.0!“的语句表达式为: Text1.Text = “欢迎使用 Visual Basic 6.0!“ 说明: (1) Let 是赋值语句的关键字,是一个可选项,通常省略; (2) 当表达式为数值型且与变量的精度不相同时,强制转换成左边变量的精度。例如:iA% = 4.7 iA是整型变量,iA中的结果是5; (3) 当表达式是数字字符串,左边变量是数值类型时,自动转换成数值类型再赋值;但当表达式有非数字字符或空串时,则出错。,5,4.1.1 赋值语句(续),例如; n%=“123” n中的结果是123,与 n%=Val(“123“)效果相同 n%=“1a23“ ' 出现“类型不匹配”的错误 (4) 赋值语句中的“=”与关系运算符中的“=”的作用截然不同。 例如: A=7=9 其中,第一个“=”是赋值运算符,第二个“=”是关系运算符。,6,4.1.1 赋值语句(续),赋值号左边只能是变量,不能是表达式、常量。如下面的赋值语句是错误的。 sin(x)=x+y ' 左边是表达式 5=sqr(s)+a+b ' 左边是常量 x+y=a+b 左边是表达式 (5) 不能在同一语句中给多个变量赋值。例如:a=b=c=1 右边两个“=”作为关系运算符处理,先进行b=c的的比较,结果为true(-1);接着进行True=1的比较,结果为False(0);最后将false的值赋给a。,7,4.1.1 赋值语句(续),(6) 当逻辑型赋值给数值型时,True转换为-1,False转换为0;反之,当数值型赋给逻辑型时,非0转换为True,0转换为False。 (7) 任何非字符类型的值赋给字符变量时,系统自动转换为字符类型。 注意:在Visual Basic中,如果变量未被赋值而直接引用,则数值型变量的值为0,字符型变量的值为空串“ “,逻辑型变量的值为False。,8,4.1.2数据的输出,Print方法可以用于在窗体、图片框和打印机以及Debug窗口上显示数据。 1.Print方法语法格式 对象名.Print,|; 其中,表达式列表是显示或打印的输出项。如果省略,则显示(输出)一个空行。 例如:Form1.Print “Visual Basic“ ' 在Form1窗体中显示“Visual Basic” Picture1.Print “Visual Basic“ ' 在图片框Picture1中显示“Visual Basic” Print “Visual Basic“ ' 在当前窗体中显示“Visual Basic”,9,Print方法使用说明,使用说明: (1) 对象名. 可以是窗体名、图片框名,也可以是立即窗口“Debug”。若省略对象,则表示在当前窗体上输出。 (2) “输出表列”是一个或多个表达式,省略为空行,若是多个表达式可以使用逗号(,)、分号(;)或空格分开。其中: ;(分号或空格):表示光标定位在上一个显示的字符后; ,(逗号):表示光标定位在下一个打印的开始位置处,打印区间隔为14列。 (3) Print方法具有计算和输出的双重功能,对于表达式,则先计算后输出。 例如:x5;y10 Print (x+y)/3 输出结果为5。,10,与Print有关的一些标准函数,可用Print方法配合Tab、Spc函数,使信息按指定的格式输出。 (1)Tab 函数 语法格式:Tab(n) Tab 函数把光标移到由参数 n 指定的位置,并从该位置输出信息。要输出的信息放在 Tab函数的后面,并用分号隔开。例如: Print Tab(25); 1250 将在第25个字符位置开始输出数值1250。,11,与Print有关的一些标准函数,【例4-1】设有某班级的部分学生名单如下:姓名、年龄、籍贯、专业、黎明23北京计算机张华22上海生物技术刘娟22南京经济学杨萍23云南外语编程序显示表格中的数据。,12,与Print有关的一些标准函数,Private Sub Form_Click() FontName = “楷体_GB2312“ ' 显示输出何种字体 FontSize = 12 显示输出字体大小 Print “姓名“; Tab(8); “年龄“; Tab(16); “籍贯“; Print Tab(24); “专业“ Print Print “黎明“; Tab(8); 18; Tab(16); “北京“; Tab(24); “计算机“ Print “张华“; Tab(8); 17; Tab(16); “上海“; Tab(24); “生物技术“ Print “刘娟“; Tab(8); 19; Tab(16); “南京“; Tab(24); “经济学“ Print “杨萍“; Tab(8); 19; Tab(16); “云南“; Tab(24); “外语“图4-1 程序运行结果 End Sub,13,与Print有关的一些标准函数,(2)Spc 函数 语法格式:Spc(n) 在Print的输出中,Spc函数是在输出下一个表达式之前首先跳过n个空格。,图4-1 程序运行结果,14,4.1.3 用户交互函数和过程,1、InputBox()函数 InputBox函数是从键盘输入数据的函数。利用它可产生一个对话框,提示用户输入数据,并返回用户所输入的内容,返回数据为字符串。 语法格式: InputBox Prompt,Title,Default,xpos,ypos ,helpfile,context 说明: (1)Prompt是一个字符串,用来指定输入框中显示的信息。 如果Prompt的内容超过一行,可以在每一行之间用回车符(chr(13)、换行符(chr(10)或回车与换行的组合(chr(13)+chr(10)将各行分割开来;,15,4.1.3 用户交互函数和过程(续),(2)Title用来指定输入框的标题,如果缺省该参数,则用工程名作为标题; (3)Default是一个字符串,用来指定文本框中的缺省内容,该参数缺省为空; (4)xpos和ypos是数值表达式,必须成对出现或成对缺省。这两个数值用来指定输入框左上角相对屏幕的位置,输入框的默认位置是水平方向居中,垂直方向距下边大约三分之一处;,16,4.1.3 用户交互函数和过程(续),【例4-2】单击窗体将出现如图4-2所示的输入框。单击“确定”按钮,可将输入的内容显示在窗体上。 程序代码: Private Sub Form_Click() Dim username As String username = InputBox(“请输入要查询的姓名,然后按确定按钮“, “输入提示“, “Wang “) Print username End Sub,17,4.1.3 用户交互函数和过程(续),InputBox Prompt,Title,Default,xpos,ypos ,helpfile,context 说明: (1) 用户在输入文本框中输入数据后,如果单击“确定”按钮或按回车键,即表示确认,并返回包含文本框内容的字符串;如果单击“取消”或按Esc键,则放弃当前输入,并返回一个空字符串。 (2) 每执行一次InputBox函数,只能输入一个值,如果需要输入多个值,则需要多次调用InputBox函数。 (3) InputBox函数返回值的数据类型为字符串。,18,MsgBox()函数,MsgBox函数可以用对话框的形式向用户输出一些必要信息,还可以让用户在对话框内进行相应的选择,然后将该选择结果传输给程序。 语法格式: MsgBox(prompt,buttons,title,helpfile,context) 其中:title、helpfile 和context参数与Inputbox函数中的同名参数类似 。,19,MsgBox()函数,(1) prompt参数:用于显示对话框的提示信息,通知用户应该做什么选择,或者直接确认信息。该参数为字符串型变量,最大长度为1024个字符,多余部分会被删掉。在内容少于1024个字符时,若一行无法容纳,可以自动换行或自己添加回车符和换行符来决定换行位置(字符串+chr(10)+ chr(13)+字符串)。此参数不允许省略。 (2) buttons参数:用于控制对话框中按钮的数目及形式、使用的图标的样式、哪个按钮为默认按钮以及强制对该对话框做出反应的设置。该参数为整数型数值变量,具体数值由上述四种控制的取值之和决定。,20,MsgBox()函数 Button的取值见p58 (电子教材6),MsgBox(prompt,buttons,title,helpfile,context) 在使用buttons参数时,只需在以上四类中分别选出合适的数值或相应的常量,将数值直接相加或者将常量用加号连接即可得到buttons参数的值。在每一类中选择不同的值会产生不同的效果,一般对于选择的值最好用常量表示,这样可以提高程序的可读性。此参数可以省略,若省略时代表值为0,只显示一个OK按钮,而且此按钮为默认按钮。MsgBox函数的返回值是一个整数数值,此数值的大小与用户选择的不同按钮有关。,21,MsgBox过程,语法格式: MsgBox prompt,buttons,title,helpfile,context MsgBox语句中的各参数与MsgBox函数相同,由于MsgBox语句无返回值,因而常用于简单的信息提示。 例如: MsgBox “程序运行完毕,请先存盘后再关机!“, vbYesNo + vbInformation,“提示“,22,4.1.4其它语句,1注释语句: 在程序中加入注释,以提高程序和可读性 其语法格式为: Rem 或 ' 说明: (1) 指要包括的任何注释文本。在Rem关键字和注释内容之间要加一个空格。可以用一个英文单引号“'”来代替Rem关键字。 (2) 如果在语句行后面使用Rem关键字,必需用冒号(:)与语句隔开,或者另起一行,rem 和注释语句之间应有空格。若用英文单引号“'”,则在其他语句行后面不必加冒号(:)。,23,结束语句(END),格式: END 功能:终止当前程序,重置所有变量,并关闭所有数据文件. 说明: (1)通常用来结束程序的执行。 (2) 其它用途: End Sub 结束一个 Sub 过程 End Function 结束一个 Function 过程 End If 结束一个 If 语句块 End Type 结束记录类型定义 End Select 结束情况语句,24,With语句,With结构用于对一个对象或用户定义对象执行一系列的语句,不能用一个With语句来设置多个不同的对象,其格式为: With 对象 语句块 End With 使用With结构可以对某个对象执行一系列的语句,而不用重复指出该对象的名称。例如,要改变窗体对象的多个属性,在With结构中进行属性的赋值如下: With Form1 .Height = 2000 .Width = 3000 .Caption = “这是一个标题“ End With,25,4.2 选择结构程序设计,1 IfThen语句(单分支结构) 语法格式1: If Then 语句块 End If 如: A=20:B=30 If AB Then T=A:A=B: B=T End If,26,IfThen语句(单分支结构),语法格式2: If Then 如:A=20:B=30 If AB Then TA:AB:BT 功能:当条件表达式的值为“真”时,则执行Then后面的语句或语句块;否则不执行任何操作。 说明:表达式都是逻辑表达式,数值表达式和关系表达式被视为逻辑表达式的特例。当表达式为数值表达式时,Visual Basic将这个值解释为True或False,即一个为零的数值为False,而任何非零数值都被看作True。,27,2. IfThen Else 语句结构 (双分支结构),语法格式1: If Then Else End If 例4-4,28,2. IfThen Else 语句结构 (双分支结构),语法格式2: If Then Else 功能:当表达式的值为非0(True)时,执行Then后面的语句块1,否则执行Else后面的语句块2,如图4-6所示,29,3. IfThenElseIf语句(多分支结构),If Then ElseIf Then Else 语句块 n+1 End If,30,3. IfThenElseIf语句(多分支结构),说明: (1) 不管有几个分支,程序执行了一个分支后,其余分支不再执行。 (2) ElseIf子句的数量没有限制,可以根据需要使用任意多个ElseIf子句。 (3) 语句中的ElseIf子句和Else子句都是可选项,如果省略这些子句,则成为单分支结构。 (4) If.Then.ElseIf 只是 If.Then.Else 的一个特例。注意,可以使用任意数量的 ElseIf 子句,或者一个也不用。可以有一个 Else 子句,而不管有没有 ElseIf 子句。 例:4-6,31,4.2.2 Select Case语句,语法格式: Select Case 测试变量或表达式 Case 表达式列表1 语句块1 Case 表达式列表2 语句块2 Case Else 语句块n+1 End Select,功能:根据Select Case 中的结果与各Case子句中的值比较,决定执行哪一组语句块。如果有多个Case短语中的值与测试值匹配,则根据自上而下判断原则,只执行第一个与之匹配的语句块。,32,4.2.2 Select Case语句,说明: 情况语句的执行过程是: 先对“测试表达式”求值; 顺序比较“测试表达式”的值和Case子句中的“表达式列 表”的值; 找到匹配值后,则执行该Case分支的语句块,把控制转移 到End Select后面的语句块; 如果没找到,则执行Case Else分支的语句块,然后把控 制转移到End Select后面的语句块。 (2) “测试表达式”:数值表达式;字符串表达式;为变量;常量。 (3) 每个Case子句中的语句块可以是一行或多行VB语句。 (4) “表达式表列”中的表达式必须与测试表达式的类型相同。 (5) “表达式列表”称为域值,可以是下列形式之一(如表4-3所示),33,表达式列表主要形式,(1)常数 Case 1 或 Case “A” (使用数值和字符串表达式) (2)表达式:Case a+b (可使用数值和字符串表达式) (3)表达式: To 表达式Case 1 To 9 Case “a” To “x” 用来指定一个范围,要求较小的值出现在 To 之前 (4)Is 关系表达式:Case Is100可以配合比较运算符来指定一个数值范围。如果没有提供,则Is关键字会被自动插入,34,4.2.3 选择结构的嵌套,在IF语句的Then分支和Else分支中可以完整地嵌套另一IF语句或Select Case语句,同样Select Case语句每一个Case分支中都可嵌套另一IF语句或另一Select Case语句。下面是两种正确的嵌套形式:,35,格式1: IF Then IF Then Else End If . Else . IF Then Else End If End IF,36,格式2: IF Then Select Case Case IF Then Else End If Case. . End Select . End IF,37,4.2.4 条件函数,1. IIF函数 使用IIf函数也可以实现简单的选择结构,其语法格式如下: result = IIF(条件表达式,True部分,False部分) 说明: (1)“result”是函数的返回值,IIF函数的工作过程如下:当条件表达式为真时,函数返回值为True(真)部分,当条件表达式为假时,函数返回值为False(假)部分。 (2)True部分和False部分可以是任何表达式。 IIf函数可以用来实现简单的选择结构,和条件语句的功能类似。,38,IIF函数,例如,有如下件 语句: If x = y Then z = x Else z = y End If 完全可以用下面的IIf函数来代替: z = IIF(x = y, x, y),39,2. Choose函数,语法格式: result=Choose(整数表达式,选项列表) 说明:Choose根据整数表达式的值来决定返回选项列表中的某个值。如果整数表达式值是1,则Choose会返回选项列表中的第1个选项。如果整数表达式值是2,则会返回列表中的第2个选项,以此类推。若整数表达式的值小于 1 或大于列出的选项数目时,Choose函数返回Null。 例: result = Choose(2, “+“, “*“) Print result,40,2. Choose函数,例如:根据Nop是14的值,转换成+、-、×、÷运算符,语句代码如下: Op= Choose(Nop,“+“,“-“,“ד,“÷“) 当值为1时,返回字符串“+”,然后放入Op变量中,当值为2时,返回字符串“-”,依此类推;当Nop是14的非整数时,系统会自动使用取Nop的整数进行再判断;若Nop不在14之间,函数返回Null值。,41,4.3 循环结构,4.3.1 Do循环结构程序设计 1. 当型循环结构 语法格式1: Do While 语句块1 Exit Do 语句块2 Loop 条件表达式可以是一个逻辑表达式,也可以是一个关系表达式,其值应是逻辑型。 Do While和Loop应成对出现。,判断 “条件表达式”是否成立,如果成立,则执行循环体,执行完循环体后,再对“条件表达式”的值进行判断,以决定是否进行下一次循环,以此进行下去,当 “条件表达式”不成立时,则退出循环体,执行Loop后面的语句,42,例4-9 :用当型循环实现1+2+3+4+100的 运算。,Dim Sum As Integer, i As Integer Sum = 0: i = 1 Do While i = 100 Sum = Sum + i i = i + 1 设置循环控制变量的步长 Loop,43,Do循环结构程序设计,语法格式2: Do Until 语句块1 Exit Do 语句块2 Loop 注:Exit Do语句用于退出DoLoop循环,判断 “条件表达式”是否成立,如果不成立,则执行循环体,当执行完循环体后,然后再对“条件表达式”的值进行判断,以决定是否进行下一次循环,以此进行下去,当Do Until后面的“条件表达式”成立(条件表达式为True)时,则退出循环体,执行Loop后面的语句,44,Do Until loop循环,例4-9 :用Do UntilLoop循环实现1+2+3+4+100的 运算。 Dim Sum As Integer, i As Integer Sum = 0: i = 1 Do Until i 100 Sum = Sum + i i = i + 1 设置循环控制变量的步长 Loop,45,2. 直到型循环结构,语法格式1: Do 语句块1 Exit Do 语句块2 Loop While ,首先执行一次循环体,然后判断Loop While后面的条件,如果成立(条件表达式为True),则返回到Do,继续执行下一次循环,以此进行下去;当Loop While后面的“条件表达式”不成立(条件表达式为False)时,则退出循环体,执行Loop While后面的语句。,46,Do . Loop While ,例: Dim Sum As Integer, i As Integer Sum = 0: i = 1 Do Sum = Sum + i i = i + 1 设置循环控制变量的步长 Loop While i = 100,47,2. 直到型循环结构,语法格式2: Do 语句块1 Exit Do 语句块2 Loop Until ,首先执行一次循环体,然后判断Loop Until后面的条件,如果不成立(条件表达式为False),则返回到Do,继续执行下一次循环,以此进行下去;当Loop Until后面的“条件表达式”成立(条件表达式为True)时,则退出循环体,执行Loop Until后面的语句。,48,DoLoop Until 循环,例: Dim Sum As Integer, i As Integer Sum = 0 : i = 1 Do Sum = Sum + i i = i + 1 设置循环控制变量的步长 Loop Until i 100,49,4.3.2 While循环结构程序设计,语法格式: While (条件表达式) 循环体 Wend 功能:当While的条件表达式的值是True时执行循环体内的代码,当While后的条件表达式的值为False时退出循环体。 说明:它与DoLoop语句的差别是:While Wend语句中不能使用Exit语句跳出循环。,50,例:用WhileWend计算1100的和,Dim Sum As Integer, i As Integer Sum = 0: i = 1 While i = 100 Sum = Sum + i i = i + 1 设置循环控制变量的步长 Wend,51,4.3.3 For循环结构程序设计,语法格式: For = To Step 语句序列1 Exit For 语句序列2 Next 循环变量,循环变量是一个数值变量(简单变量); 初值、终值和步长:均是数值表达式,其值若是实数,则自动取整。当初值终值时,步长为正数,反之为负数,步长为1时,可略去不写,步长不应=0,否则构成死循环。,52,For 循环,循环体可以是一句或多条语句。Exit for:用于退出循环。Next:其后面的“循环变量”与For语句中的“循环变量”必须相同。循环次数的计算公式为:循环次数Int(终值-初值)/步长+1,53,For 循环,例: Dim Sum As Integer, i As Integer Sum = 0 For i=1 To 100 Sum = Sum + i Next i,54,4.3.4 嵌套循环,多重循环也称为循环嵌套。由于能构成循环结构的语句有多种,它们之间可以互相嵌套,所以多重循环的形式多种多样。但要注意: (1) 每一种循环语句中的开始部分与结束部分必须配对使用。 (2) 多层循环的循环体可以一层套一层,但不能互相交叉。 (3) 不能从循环体外转向循环体内,也不能从外循环转向内循环,反之则可以。 (4) 内循环变量与外循环变量不能同名。,55,【例4-13】打印九九乘法表。 程序代码: Private Sub Form_click() Dim i, j As Single Cls Print Tab(50); “九九乘法表“ For i = 1 To 9 For j = 1 To i Print j; “ * “; i; “ = “; i * j; Next j Print ' 控制换行 Next i End Sub,

    注意事项

    本文(第4章 基本程序设计结构.ppt)为本站会员(爱问知识人)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开