网站大量收购独家精品文档,联系QQ:2885784924

C++程序设计(第3章).ppt

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

第3章 C流程控制 本章学习重点掌握内容: 结构化程序设计的程序结构 选择结构和构成选择的语句 循环结构和构成循环的语句 结构化程序设计的典型算法和应用 第3章 C流程控制 3.1 算法与流程图 3.2 C语句和程序的三种基本结构 3.3 顺序结构程序 3.4 选择结构程序 3.5 循环结构程序设计 3.6 常用算法及应用实例 3.1 算法与流程图 3.1.1 算法的概念 数据结构 + 算法 = 程序 ------ N. Wirth 所谓算法,是指为了解决一个问题而采取的方法和步骤。当利用计算机来解决一个具体问题时,也要首先确定算法。 例如,要计算S = 1 + 2 + 3 + … + 100, 算法是程序设计的灵魂,而程序设计语言是表达算法的形式。 3.1 算法与流程图 正确算法的主要特性: 1.有穷性 一个算法应该包含有限的操作步骤,而不能是无限的。 2.确定性 算法中的每一个步骤应当是确定的,而不应当是含糊的,应是十分明确无误的。 3.有效性 算法中的每一个步骤都应当有效的执行,并得到确定的结果。 4.有0个或多个输入。 5.有一个或多个输出。 3.1.2 算法的描述 一、传统流程图 流程图由一些特定意义的图形、流程线及简要的文字说明构成,它能清晰明确地表示程序的运行过程,传统流程图由以下图形组成: 3.1.2 算法的描述 二、N-S图 1973年,美国学者I.Nassi 和 B.Shneiderman 提出 在这种流程图中,全部算法写在一个大矩形框内,该框中还可以包含一些从属于它的小矩形框。例如网上购物的N-S图 3.1.2 算法的描述 三、自然语言描述 可使用汉语、英语和数学符号等,通俗易懂,但描述冗长,易引起歧义性,一般用于算法较简单的情况。 算法举例:对一个大于2的正整数,判断它是不是一个素数。 方法:将 n (其中n 2) 作为被除数, 将2 到(n-1) 各个整数轮流 作为除数,如果都不能被整除,则n为素数。 算法表示如下: S1:输入n的值 S2:2 ?i ( i 作为除数) S3: n 被 i 除,得余数 r S4: 如果 r 等于 0 , 表示 n 能 被 i 整除,则打印 n “不是素数”,算法结束;否则执行S5 S5:i+1 ?i S6: 如果 i ? n-1, 返回S3;否则,打印 n “是素数”,算法结束。 3.1.2 算法的描述 四、伪码描述 伪码是指介于自然语言和计算机语言之间的一种代码,是帮助程序员制定算法的智能化语言,它不能在计算机上运行,使用灵活,无固定格式和规范,与计算机语言比较接近。 3.2 C语句和程序的三种基本结构 语句是程序中最小的可执行单位。一条语句可以完成一种基本操作, 3.2.1 C语句分类 1.表达式语句 任何一个表达式后面加上分号;例如:c = a + b; 2.空语句 ; 3.复合语句 复合语句是用一对花括号{ }括起来的语句块。 4.控制语句 控制语句改变程序执行的方向。例如:if语句、for语句等。 3.2.2 C程序的三种基本结构 在过程化程序设计中,按照结构化设计的思想由语句构成三种基本结构。 1.顺序结构 程序按照语句的书写顺序依次执行,语句在前的先执行,语句在后的后执行,顺序结构只能满足设计简单程序的要求。 2. 选择结构(也称分支结构) 在选择结构中,程序根据判断条件是否成立,来选择执行不同的程序段。 3. 循环结构 在循环结构中,程序根据判断条件是否成立,来决定是否重复执行某个程序段。 3.2.3 结构化算法 3种基本结构:顺序结构,选择结构,循环结构。 不存在无规律的转移,只有在本结构内才允许存在分支或者向前向后的跳转。 由结构化算法编写的程序称为结构化程序。 结构化程序设计的核心思想 采用顺序、选择和循环三种基本结构作为程序设计的基本单元 只有一个入口; 只有一个出口; 无死语句,即不存在永远都执行不到的语句; 无死循环,即不存在永远都执行不完的循环。 采用“自顶向下、逐步求精”和模块化的方法进行结构化程序设计 3.3 顺序结构程序 银行存款计算 银行存款计算 “鸡兔同笼”问题 “鸡兔同笼”问题 #include iostream.h void main( ) { int h, f, chicken, rabbit; cout请输入鸡和兔的总头数:; cinh;

文档评论(0)

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

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

1亿VIP精品文档

相关文档