第3章 程序设计的3种基本结构
第3章程序设计的3种基本结构本章内容及要求:(1)了解算法概念及表示,掌握用N—S流程图表示算
法; ( 2)熟练掌握赋值语句、输入/输出消息框函数的使用; ( 3)熟练掌握行if语句、块if结构、Select Case情况选择结构有使用,掌握选择的嵌套结构; (4)熟练掌握实现循环结构的For/Next循环结构及Exit For语句、Do/Loop循环结构的使用,掌握多重循环; (5)能够运用3种结构进行综合程序设计。重点:选择结构及循环结构的实现及其应用
难点:算法设计、选择的嵌套及多重循环结构
3.1算法及算法的表示3.1.1算法概述什么是算法:广义地讲:算法是为完成一项任务所应当遵循的一步一步的规则的、精确的、无歧义的描述,它的总步数是有限的。狭义地讲:算法是解决一个问题采取的方法和步骤的描述。下面通过两个简单的例子加以说明:
3.1算法及算法的表示例3.1输入三个数,然后输出其中最大的数。将三个数依次输入到变量A、B、C中,设变量MAX存放最大数。其算法如下: 1)输入A、B、C。 2) A与B中大的一个放入MAX中。 3)把C与MAX中大的一个放入MAX中。 4)输出MAX,MAX即为最大数。
3.1算法及算法的表示例3.2输入10个数,打印输出其中最大的数。算法设计如下: (1)输入1个数,存入变量A中,将记录数据个数的变量N赋值为1,即N=1 (2)将A存入表示最大值的变量Max中,即Max=A (3)再输入一个值给A,如果A>Max则 Max=A,否则 Max不变 (4)让记录数据个数的变量增加1,即N=N+1 (5)判断N是否小于10,若成立则转到第(3)步执行,否则转到第(6)步 (6)打印输出max
3.1算法及算法的表示 3.1.2算法的特性1有穷性 2确定性 3有0个或多个输入 4有一个或多个输出 5有效性
3.1算法及算法的表示3.1.3算法的表示一、自然语言与伪代码表示算法自然语言:就是指人们日常使用的语言,可以是汉语、英语或其它语言。伪代码:是用介于自然语言和计算机语言之间的文字和符号(包括数学符号)来描述算法。
3.1算法及算法的表示例如:例3.1可用如下的伪代码表示 Begin(算法开始)输入 A,B,C IF A>B则 A→Max否则 IF C>Max Print Max B→Max则 C→Max
End (算法结束)
3.1算法及算法的表示二用传统流程图表示算法1、传统流程图中的基本符号起止框 I/O框判断框
处理框
流程线
3.1算法及算法的表示2、三种基本结构的表示(1)顺序结构 (2)选择结构
语句1语句2
Y语句1
条件
N语句2
3.1算法及算法的表示(3)循环结构a)当型循环 b)直到循环 N语句组 Y语句组 Y条件 N (a) (b)
条件
3.1算法及算法的表示三种基本结构的特点
:(1)只有一个入口 (2)只有一个出口 (3)不存在死语句 (4)不存在死循环
例:例3.2输入10个数,打印输出其中的最大的数的流程图
3.1算法及算法的表示开始
从10个数中选出最大的数的算法流程图
输入A Max=A N=1
N<10Y再输入给A
N
N
A>Max
YMax=A
打印MaxN=N+1
结束
3.1算法及算法的表示3.1.4用N—S流程图表示算法将全部算法写在一个矩形框内,在矩形内还可包含其它从属于它的框
三种基本结构的N—S图表示:1、顺序结构语句A语句B语句A语句B 2、选择结构 Y条件 N
3.1算法及算法的表示(3)循环结构a)当型循环当条件成立语句组语句组直到当条件成立 (a) (b) b)直到循环
例:画出从10个数中选出最大的数的N—S流程图
3.1算法及算法的表示开始输入A Max=A N=1
输入A Max=A, N=1当N<10输入A
N<10Y再输入给A
N
N
A>Max
Y
Max=A N=N+1
N
A>Max
YMax=A
打印Max打印Max
N—S流程图传统流程图
N=N+1
结束
3.1算法及算法的表示下面是例3.2的计算机程序,即为用计算机语言表示算法: Private Sub Form_Click() Dim a%, max%, i% a= Val(InputBox("A=?")) max= a For i= 2 To 10 a= Val(InputBox("A=?")) If a> max Then max= a Next i Print"Max="; max End Sub
3.1算法及算法的表示 3.1.6结构化程序设计方法(补充)(一)、用计算机解决问题的过程提出、分析问题确定算法模型不正确
设计算法
编写程序
调试程序
结束
正确合理
分析输出结果
3.1算法及算法的表示(二)、结构化程序设计思想自顶向下、逐步细化、模块化自顶向下:先从全局、整体设计逐步细化:将一个问题分解成几个较小的问题解决模块化:将一个大任务分解成若干个较小的部分,每个部分承担一定功能,称为“功能模块”例:给100个整数,打印输出其中的素数
3.1算法及算法的表示输入100个数存入 X1,x2,……x100让x1, x2,……x100中的非素变为0打印x1…..x100中不等于0的数 N—S流程图 S1S1细化
i=1当i<=100输入xi i=i+1
S2
S3 S3细化
i=1当i<=100 N xi≠0打印xi i=i+1
Y
…… 此处隐藏:493字,全部文档内容请下载后查看。喜欢就下载吧 ……相关推荐:
- [教育文库]夜场KTV服务员的岗位职责及工作流程[1]
- [教育文库]企划、网络、市场绩效考核方案
- [教育文库]学党史、知党情、强党性--“党的基本理
- [教育文库]2016年高考物理大一轮总复习(江苏专版
- [教育文库]干部廉洁自律自查自纠的报告
- [教育文库]2010年北京大学心理学系拟录取硕士研究
- [教育文库]资金时间价值练习题及答案
- [教育文库]保护环境的心得体会
- [教育文库]英语角内容:英语趣味小知识
- [教育文库]档案收集与管理工作通知
- [教育文库]劳动规章制度范本范本
- [教育文库]高考物理一轮复习课后限时作业1运动的
- [教育文库]机械工艺夹具毕业设计195推动架设计说
- [教育文库]通用技术教学比赛说课稿2
- [教育文库]2018年四年级英语下册 Module 7 Unit 2
- [教育文库]第2章 宽带IP网络的体系结构
- [教育文库]九年级化学第五单元课题3《根据化学方
- [教育文库]小学英语六年级情态动词用法归纳
- [教育文库]甲级单位编制窑井盖项目可行性报告(立
- [教育文库]2016-2021年中国城市规划行业全景调研
- 高考英语听力十大场景词汇总结
- 全省领导班子思想政治建设座谈会会议精
- 人教版新课标高一英语提优竞赛试题 下
- 江西省2014年生物中考试题
- 长沙镇食品药品安全事故应急预案
- 《金刚石、石墨和C60》片段教学设计
- 福州教育学院(王旭东)
- 基于EDA音乐播放器的设计
- 9、古诗两首《夜书所见》《九月九日忆
- 小学语文课外阅读有效策略探讨
- 贵州文化产业发展成支柱产业的问卷调查
- 膀胱类癌的诊治体会(附3例报告)
- 发动机积碳产生的原因
- Configuring Code Composer Studio for
- 学生良好的心理素质如何培养点滴谈
- 46 电沉积法制备锂离子电池用硅-锂薄膜
- 美舍雅阁公司管理中各部门职责
- 去壳剥皮的小妙招
- 六自由度运动平台的仿真研究
- Pride and Prejudice(傲慢与偏见)