9299.net
大学生考试网 让学习变简单
当前位置:首页 >> 其它课程 >>

3.1程序的顺序结构

3.1程序的顺序结构


第三章 程序的基本结构
3.1 程序的顺序结构
一、教材分析 教材是教科版信息技术(选修) 《算法与程序设计》第二章第三节程序的顺序结构, 本节为第 1 课时。主要内容是顺序结构程序的设计的方法,赋值语句、输入输出语句的 格式功能。从本节起学生尝试编写完整的程序,是学好程序的三种基本结构和算法与程 序设计这本教材的关键,因此本节内容的学习效果将影响后续章节的学习效率。 二、学情分析 教学中,采用计算长方体的体积和表面积为引例,提高学生的学习兴趣,师生一起 分析问题画出流程图,学生根据流程图和提示把程序补充完整,降低学习难度。对于基 本输入语句 Inputbox() 、赋值语句、基本输出语句 Print 先让学生感受功能,通过今 后的多次练习他们会掌握其用法,重点学习用顺序结构程序来解决问题的方法。 三、教学目标 1、知识与技能 理解程序顺序结构的执行流程,掌握赋值语句和输入输出语句,能够编写简单的顺 序结构的程序,以解决生活中的一些计算问题。 2、方法与过程 本节从简单的问题入手,如求圆的面积,让学生初步掌握赋值语句和输入输出语句 的使用方法及其功能。进而转入较为复杂的问题,如编写程序使从键盘上输入一个三位 数,然后反方向输出,并且运用到上一章所学的运算符、表达式等,对知识进行巩固, 课程安排形成循序渐进的梯度,充分挖掘学生潜力,让有余力的学生可以有更大空间。 3、情感态度和价值观 经历用计算机解决问题的过程,感受用计算机编程的思想;在教师的指导下,与同 学共同探究问题,让学生体验自主学习、协助学习的乐趣。 四、重点难点 1、重点 ①赋值语句和输入输出语句的使用; ②程序顺序结构的执行流程; ③能编写程序解决简单的应用题。 2、难点 根据题目写出正确的程序 五、教学策略 教学方法:讲授法、演示法、任务驱动法 学习方法:自主探究、小组合作学习、模仿示例编程

教学过程
一、设计问题,引入新课 问题 1:我们学习了哪些基本语句? ①赋值语句 ②输出语句 print ③注释语句
1

④结束语句

问题 2:我们学习了哪些基本的函数? ①与用户交互函数 InputBox()、MsgBox() ②数学函数 ③字符串函数 ④日期函数 ⑤转换函数 Visual Basic 程序设计的过程就是将这些基本的语句及函数通过一定的方式组织 在一起的过程。任何正规的程序都可以分解为三种结构,即顺序结构、选择结构、循环 结构。牢固掌握这三种基本结构,是学习程序设计的基本要求,是编写出结构清晰、易 读易懂的程序的前提。本节课开始我们一起来研究程序的基本结构,研究利用程序的三 种基本结构进行程序设计。 二、程序的三种基本结构

顺序结构 选择结构 循环结构

A、B 代表某种操作:如赋值语句或输入、输出语句等 根据条件 P 的实际情况来决定具体执行 A 或 B 当条件 P 满足时,反复执行 A,条件不成立时退出并 执行下一语句 B 按照由上到下的顺序一行一行地执行。程序中没有分 支,没有重复。 根据不同的条件判断来决定程序执行走向的结构。程 序中有分支,没有重复。 根据条件判断,需要重复执行某一段代码的程序。程 序中可能存在分支和重复。

思考:这三种程序结构分别都有哪些特点? 顺序结构 选择结构 循环结构

这一节课我们主要研究顺序结构。 三、顺序结构 观察两个简单的顺序结构程序实例(前面已编过) 。 例 1:求圆的周长和面积 Private Sub Form_Click() Const PI=3.14 '定义符号常量 Dim r As Single '定义 r 为单精 度型 Dim c As Single '定义 c 为单精 度型
2

定义常量、变量部分

Dim s As Single

'定义 s 为单精

度型 r = InputBox("输入 r:") '输入半 输入语句部分 径r c = 2*PI*r '计算周长 计 算 处 理 部 分 ( 用 赋值 语 句 实 s = PI*r*r '计算面积 现) Print c '输出周长 输出语句部分 Print s '输出面积 End Sub 例 2:统计奖牌总数。 (书上 18 页) Private Sub Command1_Click() Dim jps As Integer Dim yps As Integer Dim tps As Integer Dim jpzs As Integer jps = Val(Text1.Text) yps = Val(Text2.Text) tps = Val(Text3.Text) jpzs = jps + yps + tps Text4.Text = jpzs End Sub 本例题的流程图和界面 定义常量、变量部分

输入部分(用赋值语句实现)

计算处理部分(用赋值语句实现) 输出语句部分(用赋值语句实现)

总结: 1、通过以上两个例子,不难发现代码是按照由上到下的顺序一行一行地执行。流
3

程图也是从“开始”一步一步直到“结束”。程序执行过程中没有分支、没有重复,这 是顺序结构的显著特征。 2、顺序结构的程序一般情况下包括 4 个部分:①定义变量、常量部分②输入部分 ③计算处理部分④输出部分,这 4 个部分是按顺序执行的。 3、输入部分有两种方式:通过 Inputbox()函数输入和通过文本框的 text 属性输 入 输出部分有两种方式:通过 print 语句输出、通过文本框输出。其他的输入、输出 方式请大家课后总结。在实际编程中,输入输出的方式可以灵活使用。 练习:编写一个程序,输入正方形的边长,输出正方形的面积和周长。 四、较复杂的顺序结构程序实例 题目:从键盘输入两个数据放在两个变量里,交换两个变量的值后,再输出两个变 量。 1、给出错误算法引导学生思考正确代码 [思考]以下算法是否正确 Private Sub Command1_Click () Dim a As Single, b As Single, c As Single a = InputBox("输入 a") b = InputBox("输入 b") Print "交换前:a = ";a,"b = "; b b = a a = b MsgBox "交换后 a = " & a & "b = " & b, vbOKOnly, "交换结果" End Sub 结论:通过学生回答和上机执行这个程序说明这是错误的算法 原因分析 变量的特点: 每个变量占用(代表)一个内存空间,有新的内容被送到这个变量 中,旧的内容就被冲刷掉了。 这个程序中,先将 a 赋给 b,这样 b 变量里存放的就是 a 变量里的内容,也就是 b 以前的数据就不存在了, 所以再把 b 赋给 a 时, 里面实际上又变成以前 a 里面的内容, a 就没有达到交换的效果。 2、引入生活中的例子来发现正 确算法。 有两个锥形瓶(如右图), 1 号瓶里面装的是溴水,2 号瓶里 面装的是水,如果我们要交换两 个瓶子里的液体,该怎么办? 分析:两个锥形瓶就是两个变量,1 号瓶和 2 号瓶代表两个变量的变量名,那么溴

4

水和水就代表两个变量里的数据。那怎么交换变量里的数据,方法就是显而易见的。 按照生活常识,一般我们是用一个空瓶子作为“中转”来解决这个问题的。也就是 说,我们要交换两个变量中的值,需要通过第三方变量作一个过渡。 代码如下: Private Sub Command1_Click () Dim a As Single, b As Single, c As Single Rem 这边 a b 都是数值型的,也可以是其他类型 a = InputBox("输入 a") b = InputBox("输入 b") Print "交换前:a = ";a,"b = "; b c = a a = b b = c MsgBox "交换后 a = " & a & "b = " & b, vbOKOnly, "交换结果" End Sub 分析:这边用 c 变量作为中间变量,先将 a 里的数据暂存在 c 里,b 赋给 a,也就 将 b 里的数据换到了 a 里,c 赋给 b,也就将原来 a 的数据换到了 b 里,从而达到了交 换的效果。 显然,这边的代码也是符合顺序结构的特点。我们也可以把这个程序的流程图画出 来(如右图) 。 3、算法拓展(不用过渡变量) 如果我们交换的两个变量都是数值型,我们可以不采用第三方变量,而通过存储两 个数据“和”的方法进行交换。 代码如下: Private Sub Command1_Click () Dim a As Single, b As Single, c As Single a = InputBox("输入 a") b = InputBox("输入 b") Print "交换前:a = ";a,"b = "; b a=a+b ‘将 a、b 的和存放在 a 里 b=a-b a=a-b MsgBox "交换后 a = " & a & "b = " & b, vbOKOnly, "交换结果" End Sub 分析:这边将“和”存在 a 里,然后将(“和”-b)的结果(=原 a)送给 b,将 (“和”-b[原 a])的结果(=原 b)送给 a。从而达到交换的目的。 显然,这边的代码也是符合顺序结构的特点。 4、学生实践:不采用第三方变量,而通过存储“差”的方法进行交换。

5

Private Sub Command1_Click() Dim a As Single, b As Single, c As Single a = InputBox("输入 a") b = InputBox("输入 b") Print "交换前:a = "; a, "b = "; b a = a – b ‘将 a、b 的差存放在 a 里 b = b+ a a = b - a MsgBox "交换后 a = " & a & "b = " & b, vbOKOnly, "交换结果" End Sub 分析:这边将“差(a-b)”存在 a 里,然后将(b +“差”)的结果(=原 a)送给 b,将(b[原 a] - “差”)的结果(=原 b)送给 a。从而达到交换的目的。 显然,这边的代码也是符合顺序结构的特点。 五、评价及小结 课堂评价: 在以上的程序中,执行时按语句出现的顺序执。即当执行第一条语句后,必然从第 二条语句继续,顺序执行所有的语句,直到执行完最后一条语句为止。像这样的控制结 构称为程序的顺序结构。 顺序结构的最大特点是在这个结构内按由上到下的的书写顺序 执行,它只有一个入口和一个出口。这是一种最简单、最基本的结构。 1、VB 语言的赋值语句、输入输出语句的格式、功能和执行过程。 2、顺序结构的最大特点是在这个结构内按由上到下的的书写顺序执行,它只有一 个入口和一个出口。这是一种最简单、最基本的结构。 课堂小结: 1、设计问题,引入新课 2、程序的三种基本结构 3、顺序结构 4、较复杂的顺序结构程序实例 板书设计 2.3 程序的顺序结构 一、设计问题,引入新课 二、程序的三种基本结构 三、顺序结构 四、较复杂的顺序结构程序实例 1、给出错误算法引导学生思考正确代码 2、引入生活中的例子来发现正确算法。 3、算法拓展 4、学生实践 作业布置

6

课本:P33 实践题 第 1、2 题 根据本节所学知识,预习 3.2 程序的选择结构。 教学反思 本节课的知识点与上节课的知识点是紧密联系的, 由于上节课顺序结构已有一定的 接触,再加上本节课的内容是最基本的结构,所以学生掌握的还好,由于一部分学生平 时没有机会接触电脑, 所以操作水平差, 对于这些学生在以后的教学中要加强动手能力。 在课堂的教学设计过程中,我换位思考,处处站在学生的角度来思考问题,站在一 个初学者的角度来思考问题,想一想自己当初学习这些知识是怎样一个过程,在学习过 程中碰到了哪些困难,你是怎么解决的。由此,也就可以推测学生在学习的过程中很有 可能会碰到哪些问题,那么在教学设计的过程中就可以有针对性的进行重点设计。如何 做到这一点呢?教案不是写出来就做好上课的准备了,要首先“讲”给自己听。多年来, 我都是这样做的。这样做的好处就是:当你觉得哪儿讲起来困难时,那一定是学习的难 点。 比如这节课最初计算时, 我用到的是后面简化的公式, 但是尝试解释时发现有难度。 为此也请教了组里的老师,她说出了学生很容易想到的办法。于是做了改动。这样改动 后,使得学生在老师讲过赋值语句后,能比较容易地过渡到优化了的程序上。 其次,教师要清醒的认识到教师的一切工作是帮助学生的学,学生应该是主角,教 师只应是引领者、辅导者,教师的教学设计应符合学生的认知规律,符合学生学习的习 惯,教师教学设计的目的是怎样帮助学生进行快速、有效的知识建构;教师不能以自我 为中心,只考虑如何讲的畅快淋漓,如何讲的圆满,而不顾学生实际的学习效果。

7


推荐相关:
网站首页 | 网站地图
All rights reserved Powered by 大学生考试网 9299.net
文档资料库内容来自网络,如有侵犯请联系客服。zhit325@qq.com