C语言程序设计课件 .ppt
《C语言程序设计课件 .ppt》由会员分享,可在线阅读,更多相关《C语言程序设计课件 .ppt(30页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 第二章 算法及算法设计简介2.1 2.1 算法的概念算法的概念2.2 2.2 算法的设计与表达算法的设计与表达2.3 2.3 简单的算法实例简单的算法实例2.4 2.4 结构化程序设计方法简介结构化程序设计方法简介1/16/20231算法的概念算法的概念任何一个程序应包含的如下两方面的内容:(1)对数据的描述。在程序中要指定数据的类型和数据的组织形式,即数据结构(data structure).(2)对操作的描述。即操作步骤,也就是算法(algorithm)。著名计算机科学家沃思(Nikiklaus Wirth)提出公式 数据结构算法程序算法:算法:是对解决某个问题的方法步骤的描述。程序:程
2、序:从计算机角度来说,程序是用某种计算机能理解并执行的计算机语言描述解决问题的方法和步骤。1/16/20232实际上,一个程序除了以上两个主要要素之外,还应当采用结构化程序设计方法进行程序设计,并且用某一种计算机语言表示。因此,可以这样表示:程序算法数据结构程序设计方法语言工具和环境 在这4个方面中,算法是灵魂,数据结构是加工对象,语言是工具,编程需要采用合适的算法。算法是解决“做什么”和“怎么做”的问题。1/16/202331、什么叫算法?解决一个问题而采取的方法和步骤,就称为算法。2、算法的特性(1)有穷性 一个算法应包含有限的操作步骤而不是无限的。(2)确定性 算法中的每一个步骤都应当是
3、确定的,而不应当是含糊的,模棱两可的。1/16/20234(3)有零个或多个输入 所谓输入是指在执行算法时需要从外界取得必要 的信息。(4)有一个或多个输出 算法的目的是为了求解,“解”就是输出。没有输出的算法是没有意义的。(5)有效性 算法中的每一个步骤都应当能有效地执行,并得到 确定结果。1/16/20235算法的表示算法的表示 1、用自然语言表示算法 采用汉语、英语或其它语言来描述解决问题的方法和步骤。由于自然语言容易出现“歧义性”,且描述问题的文字冗长,因此一般很少使用自然语言来描述算法。1/16/20236例例1:有有50个学生个学生,要求将他们之中成绩在,要求将他们之中成绩在80分
4、以上者打印出来。分以上者打印出来。用用n表示学号,表示学号,n1代表第一个学生学号,代表第一个学生学号,ni代表第代表第i个学生学号。个学生学号。用用g代表学生成绩,代表学生成绩,gi 代表第代表第i个学生成绩,算法可表示如下:个学生成绩,算法可表示如下:S1:1i S2:读入学号读入学号ni和成绩和成绩niS3:如果如果gi 80,则打印,则打印 ni 和和gi ,否则不打印,否则不打印S4:i+1 i S5:如果如果 i 50,返回返回S2,继续执行;继续执行;否则,算法结束。否则,算法结束。1/16/20237起止框输入/输出框判断框处理框流程线2、用流程图表示算法(1)常用的流程图符号
5、1/16/20238上例用流程图表示:(1)流程图表示算法的优点:表示算法直观形象,比较清楚地显示出各个框之间的逻辑关系。简单,易于掌握。流程图1/16/202393、用NS图表示算法 1973年美国学者I.Nassi和B.Shneiderman提出了一种新的流程图形式。在这种流程图中,完全去掉了带箭头的流程线。全部算法写在一个矩形框内,在该框内还可以包含其他的从属于它的框。这种流程图又称NS结构化流程图。NS流程图用以下的流程图符号:(1)顺序结构:AB1/16/202310(2)选择结构:P成立不成立AB(3)循环结构:当p1成立A当型循环结构直到p1成立A直到型循环结构用以上3种NS流程
6、图中的基本框,可以组成复杂的NS流程图,以表示算法1/16/202311上例用NS图表示:用NS表示算法如图 1=i输入ni,gii+1=i直到i50gi80是否输出ni,gii+1=i直到i501=i1/16/2023124、用伪码表示算法 伪代码是用介于自然语言和计算机语言之间的文字和符号来描述算法。它不用图形符号,因此书写方便,格式紧凑,也比较好懂,便于向计算机语言算法(即程序)过渡。例 有50个学生,要求将他们之中成绩在80分以上者打印出来。用n表示学生学号,n1表示第一个学生学号,ni表示第i个学生学号。用g表示学生成绩,gi表示第i个学生成绩。1/16/202313BEGIN(算法
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C语言程序设计课件 语言程序设计 课件
限制150内