《C程序设计语言》课程PPT教学课件(讲稿)第二章 算法 algorithm

第二章算法a1 gorithm 2.1算法的概念 ■2.2简单算法举例 2.3算法的特性 2.4算法的表示 2.5结构化程序设计方法
第二章 算法 algorithm ◼ 2.1 算法的概念 ◼ 2.2 简单算法举例 ◼ 2.3 算法的特性 ◼ 2.4 算法的表示 ◼ 2.5 结构化程序设计方法

2.1算法的概念 例:求1+2+3++100=? 1、1+2,再加3,再加4.,最后加100,等于5050 2、100+(1+99)+(2+98)+.+(49+51)+50=100+49*100+50=5050 对操作的描述 程序=数据结构+算法 对数据的描述 算法分类: 数值运算算法一用于求数值解(如:求方程的根… ■非数值运算算法 多用于管理领域(如:图书管理、人事管理.)
2.1 算法的概念 程序=数据结构+算法 对数据的描述 对操作的描述 算法分类: ◼数值运算算法 ---- 用于求数值解(如:求方程的根…) ◼非数值运算算法 ---- 多用于管理领域(如:图书管理、人事管理…) 例:求1+2+3+…+100=? 1、1+2,再加3,再加4….,最后加100,等于5050 2、100+(1+99)+(2+98)+…+(49+51)+50=100+49*100+50=5050

2.2简单算法举例 例:求两个数的和 #include stepl:给定两个数的值 void main( 输出结果: step2:做加法运算 i int x, y, z; step3:将结果保存 y=3 2+3=5 step4:输出结果 Tx+y step1:2→x,3y printf(《z%dⅦn”,z); step2: X+y (2+3) printf(“%d+%d=%dn”,x,y,z); step3:5→z step4:输出z
2.2 简单算法举例 例:求两个数的和 step1:给定两个数的值 step2:做加法运算 step3:将结果保存 step4:输出结果 step1:2 → x ,3 → y step2:x+y (2+3) step3:5 → z step4:输出 z #include 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.用流程图表示:用图框表示各种操作 优点是直观形象,易于理解
2.4 算法的表示 1. 用自然语言表示 优点是使用日常用语, 通俗易懂 缺点是文字冗长, 容易出现歧义 2. 用流程图表示: 用图框表示各种操作 优点是直观形象, 易于理解

起止框 输入输出框 判断框 处理框 流程线 连接点 注释框 常用流程图符号
起止框 处理框 输入输出框 判断框 流程线 连接点 注释框 常用流程图符号

3.三种基本结构(表示一个良好算法的基本单元) ①顺序结构②选择结构(分支结构)③循环结构(重复结构) While(当型)循环 Until(直到型)循环 A 成立 不成立 A A B A B 成立 不成立 不成立 成立 4.N-S流程图 AB 当P成立 A 成立 不成立 A 直到P成立 B
3. 三种基本结构(表示一个良好算法的基本单元) ①顺序结构 ②选择结构(分支结构) ③循环结构(重复结构) A B P A B 成立 不成立 成立 A P 不成立 A P 成立 不成立 4. N-S流程图 A B A B 成立 不成立 P A 当P成立 直到P成立 A While(当型)循环 Until(直到型)循环

例:输入10个数,找出其中最大的数,并输出。 step1:输入一个数,存放在一个变量max中; step2:设置用来累计比较次数的计数器i(也是一个变量 1→i; step3:输入一个数,存放在另一个变量x中; step4:比较max和x中的数,若x>max,则将x的值送入max, 否则,max的值不变; step5:i增加1,即i+1→i; step6:若i<9,则返回step3,继续执行, 否则输出max中的数,此时max中的数即为最大数
例:输入10个数,找出其中最大的数,并输出。 step1: 输入一个数,存放在一个变量max中; step2: 设置用来累计比较次数的计数器 i(也是一个变量) 1i; step3: 输入一个数,存放在另一个变量x中; step4: 比较max和x中的数,若x>max,则将x的值送入max, 否则,max的值不变; step5: i 增加1,即 i+1i ; step6: 若i<9,则返回step3,继续执行, 否则输出max中的数,此时max中的数即为最大数

输入一个数→max #include void main( →1 i int x, max, i 输入x scanf(%d”,&max); x>max? 是 否 i=1; do x→maX { scanf(“%d”,&x); i+1→i if(>max)max=x; i<9 i=i+1 输出 max while(i<9); printf(“max=%d”,max)
输入一个数 max 1 i 输入 x xmax? 是 否 x max i+1 i 当 i void main( ) { int x , max , i ; scanf(“%d”, &max); i=1; do { scanf(“%d”, &x); if (x>max) max=x; i=i+1; } while ( i<9) ; printf(“max=%d” , max) ; }

5、伪代码 介于自然语言与计算机语言之间,用文字与符号 来描述算法。 例:求5! 开始 BEGIN(算法开始) 置t的初值为1 置i的初值为2 2=>i 当it 使使 t=t xi i+1→>i i=i+1 (循环到此结束) print t 打印t的值 END(算法结束) 结束
5、伪代码 介于自然语言与计算机语言之间,用文字与符号 来描述算法。 例:求5! 开始 置 t 的初值为1 置 i 的初值为2 当 i t 2 => i while i t i + 1 => i } print t END(算法结束)
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 《C程序设计语言》课程PPT教学课件(讲稿)Chapter 1 An Overview of C(1.2)The feature of C.ppt
- 清华大学计算中心:《计算机程序设计基础》第五章 结构化程序设计概论.ppt
- 清华大学:《计算机程序设计基础》课程教学资源(PPT课件)第四章 复合数据结构基础.ppt
- 清华大学:《计算机程序设计基础》课程教学资源(PPT课件)第三章 程序控制结构.ppt
- 清华大学:《计算机程序设计基础》课程教学资源(PPT课件)第一章 C语言的基本概念(主讲:乔林).ppt
- 清华大学:《计算机程序设计基础》课程教学资源(PPT课件)第二章 基本数据类型及其运算.ppt
- 《C语言程序设计导论》课程电子教案(PPT教学课件)第四章 函数和程序结构.ppt
- 《C语言程序设计导论》课程电子教案(PPT教学课件)第三章 语句及控制结构.ppt
- 《C语言程序设计导论》课程电子教案(PPT教学课件)第二章 数据类型、运算符与表达式.ppt
- 《C语言程序设计导论》课程电子教案(PPT教学课件)第一章 程序设计概述.ppt
- 《C语言程序设计导论》课程电子教案(PPT教学课件)第十章 位运算.ppt
- 《C语言程序设计导论》课程电子教案(PPT教学课件)第五章 预处理命令.ppt
- 《C语言程序设计导论》课程电子教案(PPT教学课件)第九章 文件.ppt
- 《C语言程序设计导论》课程电子教案(PPT教学课件)第七章 指针.ppt
- 《程序设计语言》第8章 指针.ppt
- 《程序设计语言》第8章 编译预处理.ppt
- 《程序设计语言》第7章 函数.ppt
- 《程序设计语言》模拟试题.ppt
- 《程序设计语言》集中复习.ppt
- 《程序设计语言》第1章习题.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)Chapter 1 An Overview of c.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)Chapter 3 Data types, Operators and Expressions.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)Chapter 4 Input and Output.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)Chapter 5 Control Flow.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)Chapter 7 Arrays.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)Chapter Functions.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)第九章 预处理命令.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)第十一章 结构体与共用体.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)第十二章 文件.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)典型考题.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)第四章 C语言简单程序设计.ppt
- 《C程序设计语言》课程教学资源(习题作业)作业-选择.xls
- 《C程序设计语言》课程PPT教学课件(讲稿)知识点回顾.ppt
- 《C程序设计语言》课程教学资源(习题作业)作业.xls
- 《C程序设计语言》课程PPT教学课件(讲稿)第5章 选择结构程序设计.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)知识点回顾.ppt
- 《C程序设计语言》课程PPT教学课件(讲稿)流程图.ppt
- 《C程序设计语言》课程教学资源(习题作业)作业.xls
- 《C程序设计语言》课程教学资源(习题作业)答案3.rtf
- 《C程序设计语言》课程PPT教学课件(讲稿)知识点回顾——If的使用.ppt