版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、C+程序设计新世纪应用型高等教育教材编审委员会 组编主编 罗烨 李秉璋第二版新世纪应用型高等教育软件专业系列规划教材第2章 程序的控制结构2.1 算法的概念与表示方法31.1.1 程序设计语言(1)对数据的描述。在程序中要指定数据的类型和数据的组织形式,即数据结构。(2)对操作的描述。即操作步骤,也就是算法。 数据是操作的对象,操作的目的是对数据进行加工处理,以得到期望的结果。作为程序设计人员,必须认真考虑并设计合适的数据结构和操作步骤。著名的计算机科学家Ni-kiklaus Wirth提出了一个公式来描述程序、数据结构和算法的关系:2.1 算法的概念与表示方法42.1.1 算法的概念算法就是
2、解决问题的步骤序列。算法具有以下几个特征:(1)可行性。(2)确定性。(3)有穷性。(4)可输人/输出数据。2.1 算法的概念与表示方法52.1.2 算法的表示算法的表示方法有很多种,常用的算法表示方法有:自然语言、流程图、伪代码等。其中流程图和伪代码是程序设计人员常用的两种算法表示方法。流程图是算法图形化的表示。用一些图框表示各种操作,用箭头表示算法流程,比较直观,易于理解。2.1 算法的概念与表示方法62.1.3 程序的三种基本结构流程图中的A、B、C代表一条指令或一个指令组,指令组是一个整体,在整个算法中呈现一条指令的特点,要么都执行,要么都不执行。P代表判断条件。2.1 算法的概念与表
3、示方法72.1.3 程序的三种基本结构1.顺序结构顺序结构是算法中最简单的结构,其特点是按照算法书写顺序依次执行。2.分支结构分支结构的特点是根据条件判断选择执行路径。 3.循环结构循环结构用于实现重复性动作。根据算法的有穷性,循环必须在一定条件下进行,无条件必然会导致无穷循环。2.2 分支结构82.2.1 if语句if语句的基本格式为:if语句1语句也称为条件语句,其功能是根据if后表达式的值,确定程序的执行流程:是执行,还是执行语句202.2 分支结构92.2.2 if语句的嵌套嵌套if语句的语法格式为:if语句还有另外一种嵌套形式,语法格式为:2.2 分支结构1011嵌套if语句实现了多
4、分支选择。此外C+还提供了一个switch语句,又称为开关语句,也可以实现多分支选择。它根据条件从多个分支语句序列中选择一个作为执行人日。语法格式为:2.2.3 switch语句2.2 分支结构2.3 循环结构12while语句实现当型循环。语法格式为:2.3.1 while语句其中,表达式可以是C+中的任意类型表达式,表达式的值非0(为真)时,就执行循环体语句。循环体语句可以是单语句,也可以是复合语句。while循环的执行流程如图2-5所示。2.3 循环结构13do-while循环语句属于直到型循环结构,语法格式为:2.3.2 do-while W句2.3 循环结构14for循环语句的语法格
5、式为:2.3.3 for语句2.3 循环结构15分支结构可以嵌套使用,循环结构也可以嵌套使用,形成嵌套循环。分支结构和循环结构还可以相互嵌套,形成一个复杂的程序结构,解决较为复杂的问题。C+规定,循环的嵌套只能呈包含结构,即外循环包含内循环,不能呈交叉结构。因此图2-8中(a)和(b)为合法的循环结构,通常把外层循环简称为外循环,里层循环简称为内循环。(c)是错误的循环结构。2.3.4 循环的嵌套2.4 转向语句161. break语句break语句只能用在switch语句和循环语句中。break语句在循环语句中用来立即终止循环。需要注意的是,在嵌套循环中,break语句终止的是其所在的那一层
6、循环,如外层还有循环仍要继续执行。2. continue语句continue语句只能用在循环语句中,用来终止本次循环,即跳过本层循环体中尚未执行的语句,继续下次循环。2.4 转向语句173. goto语句goto语句格式为: goto语句的功能是将程序无条件转移到“语句标号”处执行。语句标号是用来表示语句的标识符,放在语句最前面,并用胃号与语句分开。结构化程序设计方法主张限制使用goto语句。因为goto语句不符合结构化程序设计的准则,无条件转移使程序结构无规律,可读性较差。2.5 常用算法的应用实例181.枚举法枚举法也称为穷举法,基本思想是在有限范围内列举所有可能的结果,找出其中符合要求的
7、解。枚举法适合求解的问题是:可能的答案是有限个且答案是可知的,但又难以用解析法描述。这种算法通常用循环结构来完成。2.递推法递推法是通过问题的一个或多个已知解,用同样的方法逐个推算出其他解,递推法常用来求解数列问题、近似计算问题等。2.6 枚举类型191.枚举类型的定义枚举类型的定义格式为: 其中,关键字enum指明其后的标识符是枚举类型的名字,枚举常量表中列出了 该类型变量所有的取值。各枚举常量之间以“,”间隔。2.6 枚举类型202.枚举类型变量的定义定义了枚举类型,就可以定义枚举类型的变量。(1)先定义类型再定义变量,如:enum weekdaySun,Mon,Tuc, Wcd,Thu,Fri , Sat ;weekday wdl= Mon,wd27;(2)定义枚举类型的同时定义变量,如:enum gender Male, Female perl , pert=Male; /定义pcr2时并初始化(3)匿名枚举类型:enum枚举常量列表枚举变量列表;cnumSun, Mon, Tuc, Wcd , Thu,Fri,Sat wd 1,wd2;2.6 枚举类型213.枚举类型变量的运算枚举类型可以参与的运算有限,一般只能进
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《用色彩叙事》教案-2026-2027学年湘美版(新教材)小学美术六年级上册
- 2025-2026年金融伦理与职业道德试题
- 2025-2026年考研政治毛泽东思想概论复习模拟卷
- 隔离(负荷)开关安装调整记录
- 广东大湾区一模-2026届高三-2026年1月-物理-试题
- 【7道第一次月考】安徽省淮北市2025-2026学年七年级上学期10月月考道德与法治试题(含解析)
- 河北省衡水市枣强中学2026-2027学年高二上学期开学考试英语试卷
- 四川省广元市川师大万达中学2026-2027学年高二上学期入学检测化学试卷(含答案)
- 医院职业暴露知识考核试卷及答案
- 湖南省长沙麓山国际实验学校2026-2027学年高二上学期开学考试政治试卷(含答案)
- AI在华文教育中的应用
- 施工升降机安装验收实施方案
- 新版2025-2026新版部编人教版初中7七年级语文上册(全册)教案设计合集
- 2026年T电梯修理操作证考试题及答案
- 2026年四川泸州懋威科技有限公司第三次社会公开招聘3人笔试历年典型考点题库附带答案详解
- 2026年二级建造师考试《水利水电工程管理与实务》真题及答案解析【完整版】
- 工业控制系统及应用-SCADA系统680
- 关键岗位合规职责清单(部分岗位)
- (2026版)《中华人民共和国危险化学品安全法》核心要点培训+(2026年5月1日施行)课件
- 2026年市场监管辅助人员考试试题及答案
- 2026年恢复驾驶资格考试题库含答案详解(培优)
评论
0/150
提交评论