2.3 程序的基本结构
——顺序、选择结构
教材分析:
程序是计算机代码的集合,任何正规的程序都可以分解为三种基本结构:
顺序结构
选择结构
循环结构
语句1
语句2
条件
语句1
语句2
Y
N
(1)掌握顺序结构、选择结构、循环结构三种基本结构流程图
(2)能够使用三种基本结构编写简单的程序解决具体问题
语句1
语句2
条件
语句1
语句2
Y
N
教学目标:
例1:有两个锥形瓶,1号瓶里面装的是溴水,2号瓶里面装的是水,如果我们要交换两个瓶子里的液体,该怎么办?
顺序结构
(1)分析问题
(2)算法描述(自然语言)
顺序结构
交换两个值,需要用到第三个变量作为中间值。
Step1:输入两个变量A、B的值。
Step2 :利用第三个变量C来进行交换,交换的过程如下:
C=A
A=B
B=C
Step3 :输出交换后A、B的值。
实践:
分析程序
画出流程图
Private Sub cmdChang_Click()
Dim a As Single, b As Single, c As Single
a = Val(InputBox("输入a"))
b = Val(InputBox("输入b"))
Print "交换前:a="; a, "b="; b
c = a
a = b
b = c
MsgBox "交换后a=" & a & vbTab & "b=" & b, vbOKOnly, "交换结果"
End Sub
开始
结束
输入a,b
c=a
a=b
b=c
输出a,b
顺序结构:按照由上到下的顺序一行一行地执行的程序结构。
顺序结构
(3)编写代码
科普知识:
我国首位航天员杨利伟乘坐的“神舟”五号载人飞船,于北京时间2003年10月15日9时,在酒泉卫星发射中心成功升空,这标志着我国载人航天技术走向新的里程。由物理学知识可知:只有当飞船的速度达到第一宇宙速度(7.91千米/ 秒)时,才可以在地球引力作用下,绕地球近似做匀速圆周动力。
选择结构
输入飞船速度,判断飞船是否能升空?
开始
结束
输入速度V
V>=7.91
Y
N
成功飞行
不能升空
Private Sub cmdOK_Click()
Dim v As Single
v = Val(InputBox("输入速度(km/s)"))
If v >= 7.91 Then
lblShow.Caption = "飞船成功飞行!"
Else
lblShow.Caption = "飞船不能升空!"
End If
End Sub
这种先根据条件做出判断,再决定执行哪一种操作的结构称为分支结构,也称为选择结构。
选择结构
语句5
顺序结构
选择结构
循环结构
输出
结束
条件2
输入
开始
语句1
语句2
条件1
语句3
语句4
实践
输入一个正整数,判断它是偶数还是奇数。
实践
要判断一个正整数是偶数还是奇数,判断的条件是什么?
(1)分析问题
第一步:输入一个正整数N;
第二步:判断N是否能被2整除,即判断条件N mod 2==0是否成立;
第三步:若判断条件成立,则输出该正整数是偶数,否则输出该正整数是奇数
(2)分析程序的执行步骤
开始
结束
输入N
N mod 2=0
Y
N
偶数
奇数
(3)画出流程图
实践
Private Sub command1_Click()
N=InputBox("输入一个正整数:")
If (N mod 2=0) Then
Print N;" 是偶数。"
Else
Print N;"是奇数。"
End If
End Sub
(4)编写程序代码
顺序结构:按照由上到下的顺序一行一行地执行的程序结构。
总结
分支结构:根据不同的条件判断来决定程序执行走向的结构。
语句1
语句2
条件
语句1
语句2
Y
N
本节课我们学习了顺序结构、分支结构
课后练习
在第一章中我们曾经分析过判断闰年的算法,请编写程序,输入一个公元年号,输出该年是否是闰年。
谢谢!
这节课我们的表现很好!