1 / 65
文档名称:

03 算法基础与程序控制结构.ppt

格式:ppt   页数:65页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

03 算法基础与程序控制结构.ppt

上传人:中国课件站 2011/9/6 文件大小:0 KB

下载得到文件列表

03 算法基础与程序控制结构.ppt

文档介绍

文档介绍:高级语言程序设计
第三章算法基础与程序控制结构
莆田学院现代教育技术中心
2004年3月制作
莆田学院现代教育技术中心 2004年3月
本章主要内容
程序设计方法简述
算法与流程图
算法的两种表示法
两种流程图
三种基本结构
选择结构程序设计
if …else 语句 switch语句
循环结构程序设计
四种循环语句
常用算法
枚举法(穷举法) 归纳法(递推法)
课外阅读材料
程式设计与流程图
(请上网下载)
莆田学院现代教育技术中心 2004年3月
一、程序设计方法简述 1、计算机处理问题的过程
【例一】让某学生解方程 ax2+bx+c=0
求解过程:
①分析问题
这是一个一元二次方程(代数问题,须中学代数知识)
②确定处理方案用求根公式
③确定解题步骤
确定a、b、c的值
求出b2 -4ac的值
如果 b2 -4ac>0(双实根)
X1=……
X2=……
如果 b2 -4ac=0(单实根)
X1=X2=……
如果 b2 -4ac<0(双复根)
X1=……
X2=……
④根据上述步骤计算
⑤写出答案,整理、分析结果
莆田学院现代教育技术中心 2004年3月
一、程序设计方法简述 1、计算机处理问题的过程
2、编程要诀——自顶向下,逐步求精“先大纲,后文章”
如同写文章:分几部分——每部分几个问题——每个问题几点……
优点:不易顾此失彼;易于检查;减少后期修改工作量
对于面向过程的程序设计语言:
程序=数据结构+算法(做什么,如何做)
对比:文章=材料+构思
程序测试与修改
莆田学院现代教育技术中心 2004年3月
一、程序设计方法简述 3、程序测试
目的
发现程序中的错误(Bug)
程序错误
◆语法错误(编译系统检查)
◆逻辑错误(编程人员检查)
方法与技术
测试是以程序通过了编译,没有语法和连接错误为前提。在此基础上运行一组数据,来检测程序的逻辑错误。这一组测试数据应是以“任何程序都是有错误的”为前提精心设计出来的。它不仅应含有被测程序各种情况下的代表性输入数据,还应包括程序执行这些数据后预期的结果。
其他
:“程序测试只能证明错误的存在,而不能证明错误的不存在”。可以证明,除了很小的程序外,无论使用任何方法,要想做到彻底的测试,即发现程序中的所有错误,是不现实的。
常见所谓“β版”商业软件,就是软件正式发行前的测试版本。
莆田学院现代教育技术中心 2004年3月
二、算法与流程图 1、算法(algorithm) P14
算法:解题思路(解题步骤等)
算法有表示方式:
伪码(pseudocode)
用人类语言的形式(通常是英语)表示算法。
伪码不在计算机上执行,仅供程序员缩写程序之前构思时用(*注意伪码程序只包含执行语句,没有声明语句,后者仅仅是给编译器提供的信息)
流程图(flow chart) 用图示方式表示算法
编程依据(便于检查) 编程时用
使用流程图的优点:不易出错/便于编程/便于别人阅读和检查程序。
通常编程的技术路线是:
用伪码和自顶向下、逐步求精的方法来制定算法,然后再编写相应的C语言程序。
复杂程序处理部分宜用流程图表示程序处理的过程。
莆田学院现代教育技术中心 2004年3月
二、算法与流程图 1、算法(algorithm) 示例:根据学生成绩输出评定结果。
伪码语句示例之一
if student’s grades greater than or equal to 60
display ” Passed”
else
display ”Failed”
伪码语句示例之二
如果学生成绩大于或等于60
显示”及格”
否则
显示”不及格”
C语言源程序段示例
if (grade>=60)
printf(“Passed!”);
else
printf(“Failed”);
莆田学院现代教育技术中心 2004年3月
二、算法与流程图 2、传统流程图 P19
特点:
直观形象;
使用流线。
缺点:
占面积大,使用流线任意转移,易出现“乱麻”现象,造成编程与阅读程序困难。
莆田学院现代教育技术中心 2004年3月
二、算法与流程图 3、N-S结构化流程图 P26-27

特点
①取消流线
②不允许流程任意转移,只能从上而下顺序执行
③规定三种基本结构的流程图单元,由这些基本结构象搭积木似的组成各种算法(结构化设计)。
优点
算法清晰,流程不会无规律乱转移。
莆田学院现代教育技术中心 2004年3月
二、算法与流程图 4、三种基本结构