C语言-算法与流程图ppt课件_第1页
C语言-算法与流程图ppt课件_第2页
C语言-算法与流程图ppt课件_第3页
C语言-算法与流程图ppt课件_第4页
C语言-算法与流程图ppt课件_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

.,1,目录,第一章绪论第二章算法与流程图第三章数据类型、运算符和表达式第四章程序的控制结构第五章函数第六章数组第七章指针第八章结构体第九章文件操作,.,2,第二章算法与流程图,1、程序数据结构算法2、简单算法举例3、算法特性4、算法的自然语言表示5、算法的流程图表示6、算法的伪代码表示,.,3,1、程序数据结构算法,NiklausWirth,designerofPascal,Wirth,Niklaus(1976)(inEnglish).Algorithms+DataStructures=Program.PrenticeHall.0130224189.ISBN978-0130224187,程序:为计算机解题编制的一组指令集算法:处理问题的策略数据结构:处理信息的表示,TuringAward,1984,.,4,2、简单算法举例,求和:1+1/2+1/3+1/4+1/5+1/100蛮力法:S1:先计算1/2=0.5,再与1相加得1.5S2:计算1/3=0.33333,与1.5相加得1.83333S3:计算1/4=0.25,与1.83333相加得2.08333S99:计算1/100=0.01,与5.177378相加得5.187378。,.,5,2、简单算法举例,求和:1+1/2+1/3+1/4+1/5+1/100改进的算法:S1:初始化sum=0,i=1S2:如果i100,执行S3;否则执行S5S3:sum=sum+1/iS4:i=i+1,跳转到S2S5:输出sum,算法结束,.,6,2、简单算法举例,从3个数A、B、C中找出最大的数。算法1:S1:如果AB,执行S2;否则执行S3S2:如果AC,执行S4;否则执行S6S3:如果BC,执行S5;否则执行S6S4:输出AS5:输出BS6:输出C,.,7,2、简单算法举例,从3个数A、B、C中找出最大的数。算法2:S1:初始化max=AS2:如果AB,执行S3;否则max=B,执行S3S3:如果maxC,执行S4;否则max=C,执行S4S4:输出max,.,算法的五个特点:有输入(Input):零个或多个输入。有输出(Output):一个或多个输出。有穷性(Finiteness):对于任意一组合法的输入值,在执行有穷步骤之后一定能结束。可行性(Effectiveness):所有操作都可通过已经实现的基本操作运算有限次来实现。确定性(Definiteness):算法中每一步的描述都无二义性,只要输入相同,初始状态相同,无论执行多少遍,结果都应该相同。,TuringAward,1974,3、算法的特性,.,9,“好”算法的特点:正确性(Correctness):满足问题的需求。易读性(Readability):便于理解、测试和修改。健壮性(Robustness):输入非法数据时,算法能做出适当处理,不会产生难以预料的结果。时空效率(Efficiency):执行时间短,低存储。,3、算法的特性,.,10,4、算法的自然语言表示,优点通俗易懂缺点文字冗长、不直观不适合描述分支循环结构,从3个数A、B、C中找出最大的数。S1:如果AB,执行S2;否则执行S3S2:如果AC,执行S4;否则执行S6S3:如果BC,执行S5;否则执行S6S4:输出AS5:输出BS6:输出C,.,11,5、算法的流程图表示,从3个数A、B、C中找出最大的数。,开始,结束,输入A,B,C,AB,AC,CB,输出B,输出C,输出A,是,是,是,否,否,否,.,12,5.1流程图基本单元,起止框,输入/输出框,处理框,判断框,流程线,.,13,5.2流程图绘制例,输入50个学生的姓名和成绩,输出不及格学生的名单。,开始,结束,i=1,输入ni,si,i50,是,i=1,si50,是,i=i+1,否,是,否,否,.,14,5.2流程图绘制例,输入50个学生的姓名和成绩,输出不及格学生的名单。,开始,结束,i=1,输入ni,si,i50,是,i=1,si50,是,i=i+1,否,是,否,否,.,15,5.3三种基本结构对应流程图,(1)顺序结构,A,B,.,16,5.3三种基本结构对应流程图,(2)选择结构,A,B,p,是,否,.,17,5.3三种基本结构对应流程图,(3)循环结构:当型while(p)B;,B,p,是,否,.,18,5.3三种基本结构对应流程图,(3)循环结构:直到型doB;while(p);,B,p,是,否,.,19,5.4作业,(1)用流程图表示判断闰年的算法。(2)用流程图表示判断一个正整数是否是素数的算法。,.,20,5.5用伪代码表示算法,用介于自然语言和计算机语言之间的文字和符号表示算法无固定严格的语法规则beginendifelsedowhilewhile=,=input,print,.,21,例如:求和算法的伪代码,1+1/2

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论