第二章算法( Algorithm) 算法的概念 ●简单算法举例 算法的特性 算法的表示 结构化程序设计方法
第二章 算法 (Algorithm) ⚫ 算法的概念 ⚫ 简单算法举例 ⚫ 算法的特性 ⚫ 算法的表示 ⚫ 结构化程序设计方法
2.1算法的概念 算法 解决问题的方法,是程序的灵魂 程序( Program) ■对算法的具体实现 ■程序的效率不可能超过算法的限制 Nikiklaus wirth 程序=数据结构十算法十程序设计方法十语言工具 C语言程序设计-第1章C语言的程序结构2
C语言程序设计 - 第1章 C语言的程序结构 2 2.1 算法的概念 ⚫ 算法 ◼ 解决问题的方法,是程序的灵魂 ⚫ 程序 (Program) ◼ 对算法的具体实现 ◼ 程序的效率不可能超过算法的限制 ⚫ Nikiklaus Wirth ◼ 程序 = 数据结构 + 算法 +程序设计方法+语言工具
2.2简单算法举例 求1×2×3×4×5 ■S1:使p被赋值为1,表示为“1→p S2:使i被赋值为2,表示为“2→i S3:使p*i,乘积放入p中,表示为“p*→p ■S4:使计+1,和放入i中,表示为“i+1→i S5:若小于等于5,转到S3继续顺序执行;否则S6 ■S6:输出p的值,算法结束。 C语言程序设计-第1章C语言的程序结构
C语言程序设计 - 第1章 C语言的程序结构 3 2.2 简单算法举例 ⚫ 求1×2×3×4×5 ◼ S1:使p被赋值为1,表示为“1→p” ◼ S2:使i被赋值为2,表示为“2→i” ◼ S3:使p*i,乘积放入p中,表示为“p*i→p” ◼ S4:使i+1,和放入i中,表示为“i+1→i” ◼ S5:若i小于等于5,转到S3继续顺序执行;否则S6 ◼ S6:输出p的值,算法结束
2.3算法的特性 有穷性:在合理范围之内结束 确定性:含义唯一,不存在歧义 有零个或多个输入 有一个或多个输出 有效性:能有效执行,并得到确定的结果 C语言程序设计-第1章C语言的程序结构4
C语言程序设计 - 第1章 C语言的程序结构 4 2.3 算法的特性 ⚫ 有穷性:在合理范围之内结束 ⚫ 确定性:含义唯一,不存在歧义 ⚫ 有零个或多个输入 ⚫ 有一个或多个输出 ⚫ 有效性:能有效执行,并得到确定的结果
24算法的表示 起止框 输入输出框 自然语言 ●传统流程图 判断框 ●N-S图 处理框 伪代码 计算机语言 流程线 连接点 C语言程序设计-第1章C语言的程序结构5
C语言程序设计 - 第1章 C语言的程序结构 5 2.4 算法的表示 ⚫ 自然语言 ⚫ 传统流程图 ⚫ N-S图 ⚫ 伪代码 ⚫ 计算机语言