第5章Visual Basic控制结构 5.1算法及其描述 5.2选择结构 5.3循环结构 5.4常用算法与数据结构(一)】
第5章 Visual Basic控制结构 5.1 算法及其描述 5.2 选择结构 5.3 循环结构 5.4 常用算法与数据结构(一)
5.1算法及其描述 5.1.1 算法的概念 所谓算法是解决问题的有序步骤。 1.算法的特征 (1)有穷性。 (2)确定性。 (3)有效性。 (4)零个或多个输入 (⑤)至少有一个输出
5.1 算法及其描述 5.1.1 算法的概念 所谓算法是解决问题的有序步骤。 1.算法的特征 (1) 有穷性。 (2) 确定性。 (3) 有效性。 (4) 零个或多个输入。 (5) 至少有一个输出
2,算法的描述 (1)自然语言 ·文字冗长、表达不确切、二义性。 (2)流程图 ·图形方法,直观、形象、易于理解,应用 广泛。 (3)N-S图 ·是流程图的发展,去掉了流程线,算法都 表示在一个矩形框内
2.算法的描述 (1)自然语言 • 文字冗长、表达不确切、二义性。 (2)流程图 • 图形方法,直观、形象、易于理解,应用 广泛。 (3)N-S图 • 是流程图的发展,去掉了流程线,算法都 表示在一个矩形框内
5.123种基本控制结构 1顺序结构 在顺序结构中,算法的每一步操作都是按 从上到下的线性次序执行的。 2,选择结构 ·又称分支结构,根据给出的条件,选择执 行一个分支。因此,在选择结构中,必然 包含了条件判断。 3循环结构 ·又称重复执行结构。根据给出的条件,判 断是否重复执行某一组操作
1.顺序结构 • 在顺序结构中,算法的每一步操作都是按 从上到下的线性次序执行的。 2.选择结构 • 又称分支结构,根据给出的条件,选择执 行一个分支。因此,在选择结构中,必然 包含了条件判断。 3.循环结构 • 又称重复执行结构。根据给出的条件,判 断是否重复执行某一组操作。 5.1.2 3种基本控制结构
基本的循环结构有两种:当循环和直到循环。 (1)当循环:首先判断条件是否成立,若成立,执 行循环体再判断条件,决定是否继续进行循环;若 不成立,跳过这组操作,执行此循环结构后面的操 作。 2)直到循环:首先执行循环体,然后判断条件是 否成立,若成立,则继续进行循环操作;若不成立, 执行此循环结构后面的操作。 在程序设计中,算法是由一系列的控制结构构成, 每一个控制结构又由若干个语句组成。语句是程序 中有确切含义的基本单位,也是构成程序的基本成 分,程序功能是由一条条语句的执行来实现的,可 把语句视为命令
基本的循环结构有两种:当循环和直到循环。 (1)当循环:首先判断条件是否成立,若成立,执 行循环体再判断条件,决定是否继续进行循环;若 不成立,跳过这组操作,执行此循环结构后面的操 作。 (2)直到循环:首先执行循环体,然后判断条件是 否成立,若成立,则继续进行循环操作;若不成立, 执行此循环结构后面的操作。 在程序设计中,算法是由一系列的控制结构构成, 每一个控制结构又由若干个语句组成。语句是程序 中有确切含义的基本单位,也是构成程序的基本成 分,程序功能是由一条条语句的执行来实现的,可 把语句视为命令
5.2选择结构 5.2.1 单行结构条件语句 格式:f(条件)Then(语句1〉[EIse(语句2〉】 -如果“条件”成立(其值为True或为非0值),则 执行“语句1”;否则,执行“语句2 当“Ese〈语句2〉”省略时,f语句简化为: If〈条件)Then语句)
5.2 选择结构 5.2.1 单行结构条件语句 格式:If〈条件〉Then〈语句1〉[Else〈语句2〉] – 如果“条件”成立(其值为True或为非0值),则 执行“语句1”;否则,执行“语句2” – 当“Else〈语句2〉”省略时,If语句简化为: If〈条件〉Then〈语句〉
5.2.2块结构条件语句 格式: f条件1) Then 〈语句块1) False 条件1 TElself 条件2〉 Then True False 条件2 〈语句块2)】 语句块! True False 条件n-1 语句块2 [Elself条件3) Then True 语句块n-1 语句块n (语句块3)】 下一条语句 [Else 〈语句块n)】 End If
5.2.2 块结构条件语句 格式: If〈条件1〉 Then 〈语句块1〉 [ElseIf 〈条件2〉 Then 〈语句块2〉] [ElseIf 〈条件3〉 Then 〈语句块3〉] . [Else 〈语句块n〉] End If
条件语句中的“条件”不但可以是逻辑表达式和 关系表达式,还可以是数值表达式 “语句块”中的语句不能与Then在同一行上, 否则Visual Basic认为这是一个单行结构的条件 语句 块结构条件语句必须以Endf结束,而单行结构 的条件语句不需要Endf -当省略Elself子句和Else子句时,块结构条件语 句简化为: f(条件》Then 〈语句块〉 End If
– 条件语句中的“条件”不但可以是逻辑表达式和 关系表达式,还可以是数值表达式 – “语句块”中的语句不能与Then在同一行上, 否则Visual Basic认为这是一个单行结构的条件 语句 – 块结构条件语句必须以End If结束,而单行结构 的条件语句不需要End If – 当省略ElseIf子句和Else子句时,块结构条件语 句简化为: If〈条件〉 Then 〈语句块〉 End If
5.2.3 多分支结构 格式: Select Case〈测试表达式〉 ·情况语句以Select Case Case〈表达式列表1) 开头,以End Select:结 (语句块〉 束 [Case表达式列表2〉 功能是根据“测试表达 【《语句块2)】 式”的值,从多个语句 块中选择符合条件的一 [Case Else 个语句块执行 【〈语句块n)】 End Select
5.2.3 多分支结构 格式: Select Case〈测试表达式〉 Case〈表达式列表1〉 〈语句块1〉 [Case〈表达式列表2〉 [〈语句块2〉]] . [Case Else [〈语句块n〉]] End Select • 情况语句以Select Case 开头,以End Select结 束 • 功能是根据“测试表达 式”的值,从多个语句 块中选择符合条件的一 个语句块执行
例5,6商店售货,按购买货物的多少分别给予不同优惠 折扣如下:编程计算购物款数。购物不足250元,无折扣, 购物满250元、不足500元,减价5%,计算机根据学生的 答案判断正确与否,当结束时给出成绩。购物满500元、 不足1000元,减价7.5%,购物满1000元、不足2000元, 减价10%,购物满2000元,减价15%。 分析:设购物款为m,折扣为d,以上规定可表示如下: 0 (ms250) 5% (250≤m<500) d= 7.5% (500≤m<1000) 10% (1000≤m≤2000) 15% (2000≥m) 代码如下:
例5.6 商店售货,按购买货物的多少分别给予不同优惠 折扣如下:编程计算购物款数。购物不足250元,无折扣, 购物满250元、不足500元,减价5%,计算机根据学生的 答案判断正确与否,当结束时给出成绩。购物满500元、 不足1000元,减价7.5%,购物满1000元、不足2000元, 减价10%,购物满2000元,减价15%。 分析:设购物款为m,折扣为d,以上规定可表示如下: d= 0 (m<250) 5% (250≤m<500) 7.5% (500≤m<1000) 10% (1000≤m<2000) 15% (2000≥m) 代码如下: