最新整理第4章程序控制结构与算法基础.ppt

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

ElseIf 条Tru件e 3 语句块3

Then
条件3

False

语句块1

语句块2 ……语句块3
[Else
语句块n+1]

语句块n+1

End If

• 行IF语句 • 块IF语句

多分支语Sel句ect -CSasee 测le试c表t 达C式ase
Case 表达式列表1 语句组1
[Case表达式列表2 语句组2]

自动语法检测
• VB的IDE默认情况下具有自动语法检测功能。 • 如果用户输入有语法错误的语句,在按下回车键
后,系统将弹出一个出错提示框,并用红色标出 有语法错误的语句。

赋值语句
• 格式:变量|对象.属性名 =表达式 • 可以给一个变量(或对象的属性)多次赋值,但
变量中保留的是最后一次的值。 • 累加:B=B+N • 累乘:C=C*N

程序的三种基本结构
• 顺序结构:按语句书写顺序执行。 • 分支结构:也叫选择结构,根据一个条件决定程
序执行的走向。 • 循环结构:将某些语句重复执行有限次。

顺序结构

语句A 语句B

示例

开始

• 输入正方P形rivate Sub Command1_Click() 边D长im,A A求s其Single, L As Single, S As输S入ing边le长A 周A长= V与al面(Te积xt1。.Text) '获取Text1中的内容

[Else
分支2

End If

If语句流程图
条件 False True
语句A

True 条件 False

语句A

语句B

(a)

(b)

示例

开始

• 输入P一riv个ate整Su数b F,orm_Click() 若为偶D数im,X A则s 输Integer

输入A

出“偶X数= V”al,(In否putBox("输入一个整数A"))
• If语句中如果条件成立,则执行对应的语句或语句块,然 后便跳出条件语句结构。
• 在块结构的条件语句中,语句块中的语句不能与Then、 Else书写在同一行上。
• 单行结构的条件语句中不能有End If,而块结构 的条件语句中不能缺少End If。

例1
• 除数判定 (结合val函数) • 密码登录验证(结合msgbox函数) • 移动的标签
[Case表达式列表3 语句组3]
……
[Case Else
语句组n+1]
End Select

Select Case语句功能 • 首先计算出测试表达式的值,然后自上而
下依次与各个表达式列表进行比较,如果 匹配,则执行相应的语句组,然后跳到End Select后面的语句继续执行;如果测试表达 式的值不能与给出的任何一个表达式列表 匹配,则执行Case Else之后的语句组。如 果缺省了Case Else部分,而测试表达式的 值不能与给出的任何一个表达式列表匹配, 则不执行任何语句组,直接跳到End Select 后的语句执行。

改进2
• 用户名正确
▫ 密码不正确 ,判定为“密码错误”
▫ 如果密码错误,弹出对话框提示用户重新输入,如 果用户确认重新输入,则令密码框获取焦点,并清 空;否则退出程序

分支的嵌套
• 不允许交叉

例3:根据三角形的三条边求三角形的面积
• 输入三条边a, b, c ; • 如果a+b>c且b+c>a且a+c>b则利用海伦公式计算

交换两个变量的值

• 中间变量法
▫ T=A ▫ A=B ▫ B=T
• 数值加减法
▫ A=A+B ▫ B=A-B ▫ A=A-B

适合任何两个相同类型的变量 适合两个数值类型的变量

算法
• 程序=数据结构+算法 • 算法是解决问题的方法、步骤,是程序的
核心。 • 算法的特性
▫ 确定性 ▫ 能行性 ▫ 有穷性 ▫ 输入 ▫ 输出

则输出If“X 奇Mo数d ”2 =。0 Then True
Print "偶数“

X>0

Else Print "奇数“
源自文库
偶数

ENDIF

End Sub

结束

False 奇数

说明
• If语句中的条件一般是一个逻辑表达式,也可以是一个返 回值为数值的表达式。如果是数值表达式,则0对应False, 非0的任何数对应True。
第4章 程序控制结构与算法基础

实验五说明

• 上机教材 实验 P137 实验3-5

• 素数的判定

▫ 算法3:由2~n/2之间的数去除

▫ 算法4:由2~ n

之间的数去除

综合小例:
• 1.求 1!+2!+…+n! • 2.在列表框显示1~100之间的所有 素数;而不是
素数的则显示在组合框中 • 3.将上例修改为在窗体上直接打印
• 一条长语句可以分成多行书写,在除最后一行之外的其余 各行的末尾使用下划线(_)作为续行符,并且续行符与 它前面的字符之间至少要有一个空格;
• 所有语句中的变量名、函数名、关键字、对象名、对象属 性名、对象方法名等均不区分大小写,但保留定义时所使 用的大小写格式;
• 代码的物理行最多可含1023个字符,一个逻辑行最多可 由10个物理行组成。
三角形的面积; • 否则弹出错误信息后结束。

多分支语句I-f I条f-件E1lsTeheInf

True

条件1

FEa语llsse句If中块的1Else与If之间不能有空格! EElsleseIfIf条语句件的2 数Th量en没有限制!

True 前语面条句的件块2条2件成Fal立se 执行对应语句后结束!
L=4*A

S=A^2

L=4*A

Text2.Text = L

'在Text2中输S出=A周^长2

Text3.Text = S

‘在Text3中输出面积

End Sub

输出L、S

结束

分支结构-If语句

• 单行结构If语句

▫ If 条件 Then 语句A [Else 语句B]

• 块结构If语句

If 条件 Then 分支1
例2
• 改进的密码验证 (结合msgbox函数) • 三角形面积(海伦公式) • 单击窗体,判断输入的数是奇数还是偶数

改进1
• 1.用户名错误,则判定为“非法用户”,弹出对 话框后,退出
• 2.用户名正确
▫ 密码不正确 ,判定为“密码错误” ▫ 密码也正确 ,判定为“合法用户”, 并进入另一
个表单
▫ 要求:每显示8个则换行显示下一行内容

例:

1. * 输出

顺序结构

2. 移动的标签

3. 除数为0的判定

4. 密码登录验证

5. 素数(质数)判定

6. 随机计算题

循环

三种基本结构 分支(选择)结构

代码书写规则
• 每个语句一行,以回车键结束; • 多个语句可以写在同一行上,各语句之间用冒号(:)进
行分隔;
相关文档
最新文档