第五章选择结构与循环结构程序设计
第五章 选择结构与循环结构程序设计
本章主要内容 51选择机构程序设计 52Fo循环结构程序设计 53Whie循环结构程序设计 54Do循环结构程序设计 5.5多重循环 56程序举例
本章主要内容 5.1 选择机构程序设计 5.2 For循环结构程序设计 5.3 While循环结构程序设计 5.4 Do循环结构程序设计 5.5 多重循环 5.6 程序举例
5.1选择结构程序设计 ◆单行结构条件语句 格式:fThen[Ee 功能:若条件成立或为非0值,则执行“语句1”,否则 执行语句2 其中:“条件”通常是关系表达式或逻辑表达式。 “语句1”和“语句2”可以是简单句或复合句。 Ese子句为可选项
5.1 选择结构程序设计 ◆单行结构条件语句 格式:If Then [Else] 功能:若条件成立或为非0值,则执行“语句1” ,否则 执行语句2。 其中:“条件”通常是关系表达式或逻辑表达式。 “语句1”和“语句2”可以是简单句或复合句。 Else子句为可选项
例5-1输入三个数,输出其中最大值。 Private Sub Command1_Click Dim al, b cl, max! a= nputBoⅹ(“请输入第一个数" b= inpuTbox(请输入第二个数") C= InputBoX请输入第三个数") max= a If b> max Then max=b If c> max then max=c Printa;"":b;"";c;"中最大值是:"mQ End sub 例5-2编程求符号函数sgn(X)的值。P102
例5-1 输入三个数,输出其中最大值。 Private Sub Command1_Click() Dim a!, b!, c!, max! a = InputBox("请输入第一个数") b = InputBox("请输入第二个数") c = InputBox("请输入第三个数") max = a If b > max Then max = b If c > max Then max = c Print a; ","; b; ","; c; "中最大值是:"; max End Sub 例5-2 编程求符号函数sign(x)的值。P102
◆块结构条件语句 格式: If condition1Then statementblock-1> [Elself condition2 Then TElse End if
◆块结构条件语句 格式:If condition1 Then [ElseIf condition2 Then ] ... [Else ] End If
功能:若“条件1”成立,执行“语句块1”;否则若 条件2”成立,执行“语句块2”;……若上述条件均 不成立,执行“语句块n”。 例5-3输入系数b和C,求二次方程ox2+bX+C=0的 实根。编程如下 例5-4给出a,b,C的值,问它们能否构成三角形的 3边。如能构成三角形,计算此三角形的面积
功能:若“条件1”成立,执行“语句块1”;否则若 “条件2”成立,执行“语句块2”;……若上述条件均 不成立,执行“语句块n”。 例5-3 输入系数a,b和c,求二次方程ax2+bx+c=0的 实根。编程如下: 例5-4 给出a,b,c的值,问它们能否构成三角形的 3边。如能构成三角形,计算此三角形的面积
Private Sub Command1_Click() Dima!,b!,c!,d!,1!,x2!, a=Vo( inpuTBox(请输入系数o:"):b=Vo(npu+Box(“请输入系数b:) C=Vo( inpuTbox(请输入系数c:"):d=b*b-4*a*C If d>0 Then ]=(-b+Sqr(o)/(2*o):X2=(-b=Sqr()/(2 Pin"×]=,×1,"x2=;x2 Else If d=0 Then b/(2*a):Prnt"×=;x Else Pint"此方程无实根 End if End I End sub Private Sub Command2_Click( End End sub
Private Sub Command1_Click() Dim a!, b!, c!, d!, x1!, x2!, x a = Val(InputBox("请输入系数a:")):b = Val(InputBox("请输入系数b:")) c = Val(InputBox("请输入系数c:")):d = b * b - 4 * a * c If d > 0 Then x1 = (-b + Sqr(d)) / (2 * a): x2 = (-b - Sqr(d)) / (2 * a) Print "x1="; x1, "x2="; x2 Else If d = 0 Then x = -b / (2 * a): Print "x="; x Else Print "此方程无实根" End If End If End Sub Private Sub Command2_Click() End End Sub
Goto语句 格式:GoTo 功能:把控制转移到“标号”所在的程序行,并从该 行开始往下执行。 说明:1、标号实一个标识符或整型数; 2、程序必须给GOo语句提供唯一的转向入口, 入口处格式为:: 3、不能用GOTo语句转向另一个过程。 例5-5:设计一个程序,从键盘上输入学生的分数, 统计其中及格的人数以及总平均分。P106
Goto语句 格式:GoTo 功能:把控制转移到“标号”所在的程序行,并从该 行开始往下执行。 说明:1、标号实一个标识符或整型数; 2、程序必须给GoTo语句提供唯一的转向入口, 入口处格式为:: 3、不能用GoTo语句转向另一个过程。 例5-5:设计一个程序,从键盘上输入学生的分数, 统计其中及格的人数以及总平均分。P106
◆情况语句 Select Case Case [] [Case [Case Else ] End select
◆情况语句 Select Case Case [] [Case ] …… [Case Else ] End Select
功能:根据“测试表达式”的值,从多个语句块中选择符 合条件的一个语句块执行 说明: 1、“测试表达式”的值与“表达式表列”的值均不匹 配的时候,执行 case else子句。 2、测试表达式可以是数值表达式或字符串表达式。 3、CQse子句可以是一行或多行语句。 4、“表达式表列”中的表达式必须与测试表达式的类 型一致。 5、“表达式表列”称为域值,可以是下列形式之
功能:根据“测试表达式”的值,从多个语句块中选择符 合条件的一个语句块执行。 说明: 1、“测试表达式”的值与“表达式表列”的值均不匹 配的时候,执行case else 子句。 2、测试表达式可以是数值表达式或字符串表达式。 3、Case子句可以是一行或多行语句。 4、“表达式表列”中的表达式必须与测试表达式的类 型一致。 5、“表达式表列”称为域值,可以是下列形式之一: