第二章算法 2.1算法的概念 ■2.2简单算法举例 2.3算法的特性 2.4算法的表示 2.5结构化程序设计方法
第二章 算法 ◼ 2.1 算法的概念 ◼ 2.2 简单算法举例 ◼ 2.3 算法的特性 ◼ 2.4 算法的表示 ◼ 2.5 结构化程序设计方法
2.1算法的概念 对操作的描述 程序=数据结构+算法 对数据的描述 算法分类:数值运算算法-用于求数值解 非数值运算算法---多用于管理领域
2.1 算法的概念 程序=数据结构+算法 对数据的描述 对操作的描述 算法分类:数值运算算法 ---- 用于求数值解 非数值运算算法 ---- 多用于管理领域
2.2简单算法举例 例:求两个数的和语言程序 算法1: #include <stdio.h> 输出结果: stepl:给定两个数的值 void main( step2:做加法运算 i int x, y, z 2+3=5 step3:将结果保存 step4:输出结果 Xty; 算法2: printf(《z%dⅦn”,z); stepl:2→x,3→ printf(“od+%d=%dn y, z) step2: x+y(2+3) step3:5→Z step4:输出z
2.2 简单算法举例 算法1: step1:给定两个数的值 step2:做加法运算 step3:将结果保存 step4:输出结果 算法2: step1:2 → x ,3 → y step2:x+y (2+3) step3:5 → z step4:输出 z C语言程序 #include <stdio.h> void main( ) { int x, y, z; x=2; y=3; z=x+y; printf(“z=%d\n”, z); printf(“%d+%d=%d\n”, x, y, z); } 输出结果: z=5 2+3=5 例:求两个数的和
2.3算法的特性 有穷性:一个算法包含有限的操作步骤 2.确定性:算法中的每一个步骤是确定的,含义是唯一的 3.有零个或多个输入 4.有一个或多个输出 5.有效性:算法中每一个步骤应能有效运行
2.3 算法的特性 1. 有穷性:一个算法包含有限的操作步骤 2. 确定性:算法中的每一个步骤是确定的,含义是唯一的 3. 有零个或多个输入 4. 有一个或多个输出 5. 有效性:算法中每一个步骤应能有效运行
2.4算法的表示 1.用自然语言表示 开始 优点是使用日常用语,通俗易懂 2→x 缺点是文字冗长,容易出现歧义 3>y 2.用流程图表示:用图框表示各种操作 X+y z 优点是直观形象,易于理解 输出z 结束
2.4 算法的表示 1. 用自然语言表示 优点是使用日常用语, 通俗易懂 缺点是文字冗长, 容易出现歧义 开始 2→x 3→y x+y→z 输出z 结束 2. 用流程图表示: 用图框表示各种操作 优点是直观形象, 易于理解