C语言(第三章简单算法制定).ppt

  1. 1、本文档共26页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言(第三章简单算法制定)

* * 第3章 简单算法设计 第3章 程序的简单算法制定 本章主要内容 1. 结构化程序的算法设计 2. 结构化算法的性质及结构 3. 结构化算法的描述方法 4. 结构化算法流程图 第3章 程序的简单算法制定 ?算法: 解决问题的方法和要遵循的步骤。 算法描述了程序要执行的操作及操作的步骤顺序。 ?程序的功能是通过算法来描述的。 ?C语言程序是一种结构化的程序。 ?结构化程序: 问题可以分解成相互独立的几个部分。 每个独立部分可以通过简单的语句或结构来实现。 ?分问题解的过程就是算法设计的过程。 重点:掌握分析问题、解决问题的方法。 3.1 结构化程序的算法设计 【例3-1】 要求从键盘输入3个数,找出其中最小的那个数,将其输出到屏幕。请给出解决这个问题的算法。 分析:程序对于从键盘输入的3个数必须用3个变量来保存,分别为a,b,c代表输入的3个数,另外,还需要一个变量min来保存最小的那个数。 1.先比较a和b的值,把数值小的放入min中; 2.再将min与c比较,又把数值小的放入min中。 3.经过两次比较,min中已存放的是a,b,c 3个数中最小的数。把min的值输出就是所需结果。 3.1 结构化程序的算法设计 算法步骤: 1.输入3个数,其值分别赋给3个变量a,b,c; 2.把a与b中较小的那个数放入变量min中; 3.把c与min中较小的那个数放入变量min中; 4.输出最后结果min的值。 ?改进上面的算法描述,将第2步和第3步的算法具体化。 1.输入三个数,其值分别赋给三个变量a,b,c; 2.比较a与b的值,如果ab,则min=a;否则min=b; 3.比较c与min的值,如果cmin,则min=c; 4.输出最后结果min的值。 ?通过算法描述的步骤,可以很方便地用程序语言来实现。 3.2 结构化算法的性质及结构 3.2.1 结构化算法性质 1.算法名称 ?给算法命名,是为了方便算法的描述,在C语言中,算法的名字通常就是函数名。 2.输入 ?算法应有输入的数据或初始条件。 3.输出 ?算法通常会有一个或多个输出,是对输入数据加工后的结果。 4.有效性 ?算法的每一步都是可执行的,可通过人工计算的。 5.正确性 ?算法的结果必须是正确的,可验证的。 6.有限性 ?任何算法必须在执行有限条指令后结束。 3.2 结构化算法的性质及结构 3.2.2 结构化算法的结构 在C语言算法的主要结构有如下3种。 1.顺序结构 ?顺序结构的特点: 程序在执行过程中是按语句的先后顺序来执行的,每一条语句都代表着一个功能, 2.分支结构 ?分支结构的特点: 程序在执行过程中,会根据条件的不同有选择的执行不同的功能。 3.循环结构 ?循环结构的特点: 程序在执行过程中,在一定的时间段内或一定的条件下,重复地执行某个功能,直到时间已到或条件不再满足。 3.2 结构化算法的性质及结构 ?程序设计要解决的两个主要问题: (1)按什么顺序或步骤来执行; (2)用什么语句来实现。 ?算法设计是核心问题。 提示 3.3 结构化算法的描述方法 ?常用的描述方法有自然语言、流程图、伪代码等。 3.3.1 自然语言 ?用类自然语言表示算法。 如:汉语、英语或其他语言。 ?特点:通俗易懂,简单明了。 3.3 结构化算法的描述方法 【例3-2】 从键盘输入两个变量的值a、b,请按输入值从小到大的顺序将这两个变量的值输出到屏幕。请写出这个问题的算法描述。 算法描述: 第1步:输入变量a和b的值; 第2步:比较a和b的值; 如果a大于等于b,则先输出a,再输出b; 否则,先输出b,再输出a; 第3步:算法结束。 3.3 结构化算法的描述方法 【例3-3】 几何级数求和:sum=1+2+3+4+5…+(n?1)+n。请写出该问题的算法。 算法描述: 第1步:给定一个大于0的正整数n的值; 第2步:定义一个整型变量i,设其初始值1; 第3步:定义整型变量sum,其初始值设置为0; 第4步:如果i小于等于n,则转第5步,否则执行第8步; 第5步:将sum的值加上i的值后,重新赋值给sum; 第6步:将i的值加1,重新赋值给i; 第7步:执行第4步; 第8步:输出sum 的值; 第9步:算法结束。 3.3 结构化算法的描述方法 3.3.2 流程图 ?流程图是一种算法的形象表示。 ?流程图是由流程线和几何图形框连接而成的。 ?算法流程图的符号采用美国国家标准化协会(ANSI)规定的一些常用符号: 开始框 判断框 结束框 执行框 数据框 连接符 流程线 ?算法流程图的3种基本结构: 顺序结构、分支结构、循环结构 1.顺序结构 ?顺序结构是一种简单的线性结构,

您可能关注的文档

文档评论(0)

shaoye348 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档