C语言程序设计 第2章 算法

上传人:E**** 文档编号:89422835 上传时间:2019-05-25 格式:PPT 页数:19 大小:94.50KB
返回 下载 相关 举报
C语言程序设计 第2章  算法_第1页
第1页 / 共19页
C语言程序设计 第2章  算法_第2页
第2页 / 共19页
C语言程序设计 第2章  算法_第3页
第3页 / 共19页
C语言程序设计 第2章  算法_第4页
第4页 / 共19页
C语言程序设计 第2章  算法_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《C语言程序设计 第2章 算法》由会员分享,可在线阅读,更多相关《C语言程序设计 第2章 算法(19页珍藏版)》请在金锄头文库上搜索。

1、第二章 算法 2.1 算法的概念 要利用计算机处理问题,光学习语言的语法规则还不够,最重要的是要学会针对各类型的问题,拟定出有效的解题方法和步骤。解题方法和步骤就是算法。,算法: 为了解决一个问题而采取的有限步骤。 计算机算法: 如何使计算机一步一步地工作的具体过程。,利用计算机处理问题的步骤: 1)设计好算法算法设计; 2)用计算机语言实现算法程序设计。 算法必须是“有效”的。 算法设计还要充分考虑算法的好坏。 衡量算法好坏的主要标准: 程序简练。 执行速度快。 占空间少。,例:考虑 的算法。 算法:直接表达。 直接用语句 s=1+2+3+4+5+6+7+8+9+10,当项数较多时该算法不适

2、用,s=i,1,10,算法:迭代法(累加求和法) s=1+2+3+4+5+6+7+8+9+10 算法步骤: s i 使s=0 + 使i=1 累加器 记数器 s+is i+1i 若i10转,否则转 输出s,0,1,1,2,3,3,6,4,10,5,该算法通用,是好算法,2.2 算法的表示 算法需要有统一的表示方法 常用的表示方法有: 自然语言 流程图 结构化流程图 N-S流程图.,1、自然语言 对于计算 s=1+2+3+4+5+6+7+8+9+10 用自然语言表示为: 使s=0 (s为累加器) 使i=1 (i为计数器) s+is (累加求和公式) i+1i (计数器加1) 若i10转,否则转 输

3、出s的值 特点:通俗易懂、文字冗长、含义不大严格。,2、流程图 用流程图符号表示算法。 常用的流程图符号 起止框 输入输出框 处理框 流程线 判断框,对于计算 s=1+2+3+4+5+6+7+8+9+10 用流程图表示为:,s+i s,i+1 i,S+i s,S+i s,i10,输出s,0 s,1 i,直观形象,易于理解,次序清楚,Y,N,3、结构化流程图 传统的流程图有一个弊端:对流程线没有严格的限制,对于较复杂的算法可能会变成乱麻一般(BS型算法)。 为克服这一弊端,提出了由三个基本结构组成算法流程图的思想: 结构化流程图,三个基本结构: 顺序结构 按固定顺序(从上到下或从左到右)执行的结

4、构。,A,B,a,b, 选择结构 根据条件P选择执行哪一个分支。 成立 不成立,p,A,B,a,b,成立,不成立,例:计算 y= 1/x 当x0时 y= 10000 当x=0时 的算法流程图图: 选择结构,输入x,X=0?,10000y,1/xy,输出y,Y,N, 循环结构 重复执行某些操作的结构。 分为两种: 当型循环和直到型循环。 当型循环 直到型循环,P1,A,A,P2,a,a,b,b,Y,Y,N,N,可以看出,每个基本结构都只有一个入口和一个出口,因此,用三个基本结构构成的流程图不会象乱麻一般,用三个基本结构构成的流程图就成为结构化流程图,用结构化流程图描述的算法称为结构化算法,相应的

5、程序设计就称为结构化程序设计。,观察前例:,0 s,1 i,S+i s,i+1 i,i10,输出s,顺序结构,循环结构,y,n,4 N-S流程图 N-S流程图的三个基本结构:,A,B,P,成立,不成立,A,B,A,B,当P1,直到P2,顺序结构,选择结构,循环结构,例:计算 y= 1/x 当x0时 y= 10000 当x=0时 的N-S流程图:,输入x,X=0?,是,否,10000y 1/xy,输出y,例: 计算 s=1+2+3+4+5+6+7+8+9+10 的N-S流程图: i10 直到i10 直到型 当型,0 s,1 i,输出s,1 i,0 s,s+i s,i+1 i,s+i s,i+1 i,输出s,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号