C语言教程课件ch.ppt
第2章 程序的灵魂-算法,主要内容:算法的概念算法的举例算法的特性算法的表示方法,广义地说,为解决一个问题而采用采取的方法或步骤,称为”算法“。计算机算法:计算机能执行的算法计算机算法分类数值运算算法:求数值解非数值运算算法:事务管理领域等,算法的概念,程序对数据的描述:数据结构对操作的描述:对数据的操作步骤,算法Wirth公式:程序数据结构算法还包括程序设计方法和语言工具,算法举例,例1:求12345采用最原始的方法:步骤1:1 2 结果2步骤2:2 3 结果6步骤3:6 4 结果24步骤4:24 5 结果120120是最后的结果。,通用的表示方法(求5!的算法):设三个变量:p为被乘数,i为乘数,m为乘积s1:使p=1s2:使i=2s3:m=piS4:p=ms5:i=i+1s6:转去执行s3S7:算法结束,当?时,,问题:最后的乘积在哪里?P的值就是5!,更简单的表示方法(求5!的算法):设两个变量:p为被乘数,i为乘数s1:使p=1s2:使i=2s3:p=pis4:i=i+1s5:如果i5,转去执行s3S6:算法结束。最后的p的值就是!。,例、判断一个成绩n是否及格。设一个变量:n表示成绩:输入成绩存放在n中:如果n,则执行;否则转去执行s4:输出“及格”,结束:输出“不及格”,结束,其中,和只能执行一个称为选择结构,例:求+100的值方法一:利用求和公式S1:计算1+100得101S2:计算100101得10100S3:计算10100除以2得5050,方法二:设两个变量:sum为被加数,i为加数s1:使sum=1s2:使i=2s3:sum=sum+is4:i=i+1s5:如果i100,转去执行s3S6:算法结束。最后的sum的值就是结果。,顺序结构、选择结构、循环结构是表示一个良好算法的基本结构。由以上3种基本结构组成的算法,称为“结构化”的算法,可以解决任何复杂的问题。,算法的特性p19,1)有穷性2)确定性3)有零个或多个输入4)有一个或多个输出5)有效性,算法的表示,自然语言流程图伪代码计算机语言,算法的流程图表示法,传统流程图,顺序结构、选择结构和循环结构流程图,例1:5!的流程图,i=5,Y,N,N-S图:三种控制结构的N-S图,例1的N-S图,作业:课本第36页习题 2.4(4),(5)2.5(4),(5)共画4个流程图16开作业纸书写下次课交作业,