版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、,第三章 C语言的流程设计,第一节 算 法 算法+数据结构=程序 算法的性质与组成要素 一、算法的性质: 1、解题算法是一有穷动作序列 2、此动作序列只有一初始动作 3、序列中每一个动作仅有一个后继动作 4、序列终止表示问题得到解答或问题没有解答。,TC IDE,第三章 C语言的流程设计,第一节 算 法 二、算法的组成(操作和控制结构) 1、 操作: 包括算术运算、逻辑运算、关系运算、函数运算、位运算、I/O操作等。 2、 控制结构: 控制算法中各个操作的执行顺序。 三种基本控制结构是: 顺序结构(顺序执行) 选择结构(比较判断) 循环结构或称重复结构(反复执行),TC IDE,第一节 算 法
2、 算法的描述 1、流程图: 用一些图框表示各种类型的操作,用线表示这些操作的执行顺序。(图框举例如下图),第三章 C语言的流程设计,TC IDE,处理,判断,数据,准备,特定处理,第一节 算 法 算法的描述 2、三种控制结构流程图:,第三章 C语言的流程设计,TC IDE,处理2,处理1,处理1,处理2,处理,判断,Y,N,第三章 C语言的流程设计,第二节 用C语言描述算法 表达式语句 表达式语句可以分为以下三种基本类型: 1、赋值语句:由赋值表达式组成。 E.g. x=1; 2、函数调用语句:由函数调用表达式组成。 E.g. printf(“Hello,Everyone!”); 3、空语句:
3、只有一个分号而没有表达式的语句。 E.g. ;,TC IDE,第三章 C语言的流程设计,TC IDE,第二节 用C语言描述算法 形成流程控制结构的语句 一、选择型结构(二): (1)选择基本结构: if(表达式) 语句1; else 语句2; ,第三章 C语言的流程设计,第二节 用C语言描述算法 形成流程控制结构的语句 一、选择型结构(一): (2) 缺省else的选择型结构: if(表达式) 语句; ,TC IDE,第三章 C语言的流程设计,第二节 用C语言描述算法 形成流程控制结构的语句 一、选择型结构(一): (3) if条件语句的嵌套: if(表达式1) if(表达式2) 语句1; e
4、lse 语句2; else 语句3;,TC IDE,第三章 C语言的流程设计,第二节 用C语言描述算法 形成流程控制结构的语句 一、选择型结构(一): (4) if-else-if结构: if(表达式1) 语句1; else if(表达式2) 语句2; else 语句n;,TC IDE,第三章 C语言的流程设计,第二节 用C语言描述算法 形成流程控制结构的语句 一、选择型结构(二): switch选择结构: switch (整数表达式) case (常量1) 语句1; case(常量2) 语句2; default: 语句n+1;,TC IDE,第三章 C语言的流程设计,第二节 用C语言描述算法
5、 二、循环控制结构(3种): 1、 for循环 (先判断后执行): 语法格式为: for(; ; ) 语句; 当条件为真时, 执行语句;直到条件为假才结束循环。,TC IDE,第三章 C语言的流程设计,第二节 用C语言描述算法 二、循环控制结构(3种): 2、 while循环 (先判断后执行): 语法格式为: while(条件) 语句; 当条件为真时, 执行语句;直到条件为假才结束循环。,TC IDE,第三章 C语言的流程设计,第二节 用C语言描述算法 二、循环控制结构(3种): 3、do-while 循环(先执行后判断): 语法格式为: do 语句; while(条件); 先执行循环体语句,
6、 直到条件为假时结束循 环 。,TC IDE,第三章 C语言的流程设计,第二节 用C语言描述算法 限定转向语句 一、break语句: 中止执行选择或者循环结构。 二、continue语句: 使本次循环的执行提前结束。 三、函数调用和返回: 调用将使流程转向所调用的函数体; return(返回)将使流程从被调用函数返回。,TC IDE,第三章 C语言的流程设计,第二节 用C语言描述算法 goto语句 goto语句是一种无条件转移语句。 语法格式为: goto 标号; Notes: goto语句很少使用。 在多层嵌套退出时, 会用到goto语句。,TC IDE,第三章 C语言的流程设计,第二节 用
7、C语言描述算法 C基本语句一览,TC IDE,第三章 C语言的流程设计,TC IDE,第二节 用C语言描述算法 复合语句 把一组语句括在一对花括弧之中。 E.g. c=getchar(); putchar(c); 停止函数exit() (标准函数) 停止当前程序运行,并返回到操作系统。,第三章 C语言的流程设计,第三节 选择型程序设计 ifelse结构的应用 Ex3-3: 求一个数的绝对值 Ex3-4: 求三个数中的最大者 Ex3-5: 求ax2+bx+c=0的根 else if结构的应用 Ex3-6: 求ax2+bx+c=0的根 switch结构的应用 Ex3-7: 判断键盘输入为何字符的函
8、数 Ex3-8: 猜字游戏,TC IDE,第三章 C语言的流程设计,第四节 循环型程序设计 穷举与迭代算法 一、穷举(是一种重复算法) 对问题的所有可能状态一一测试,直到找到解或将全部可能状态都测试完为止。 循环控制的办法:计数法和标志法。 计数法:要先确定循环次数,完成循环的次数后, 结束循环。 标志法:达到一目标时,结束循环。 Ex3-9 录取新生 Ex3-10 搬砖问题,TC IDE,第三章 C语言的流程设计,第四节 循环型程序设计 穷举与迭代算法 二、迭代 是一个不断用新值取代变量的旧值的过程; 或者说,由旧值递推出变量新值的过程。 Ex3-11 人口增长问题 Ex3-12 兔子繁殖问题 Ex3-13 一元方程迭代解法,TC IDE,第三章 C语言的流程设计,第四节 循环型程序设计 while结构及应用 是一种条件循环结构。 其控制结构: while (条件表达式) 循环体; 首先要对条件表达式进行计算,若其值为真, 则执行循环体中的语句,否则跳过循环体。 若其值为0, 则立即退出循环,即一次也不执行。 Ex3-14 Ex3-15 印数程序 Ex3-21 平方根,TC ID
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 水库溢洪道除险加固考题及答案解析
- 2026年机动车检测工考试题库150道附参考答案(综合题)
- 经尿道前列腺电切(TURP)护理查房
- 2026年健康管理师三级理论冲刺试题汇编
- 2026年节水知识考试题
- 2026年距骨颈骨折诊疗指南测试题及答案
- 2026年美甲师(美甲技术知识)试题及答案
- 2026年内科常见内分泌疾病诊断与治疗考核试题及答案解析
- 2026年人工智能工程师高级考试题库含答案
- 2026年人工智能训练师(一级)职业道德与法规题库
- 2026年中国医美行业发展白皮书
- 【2026新版一年级上册数学】第一单元一课一练【人教版】
- 2026年中国光电芯片现状研究及发展趋势预测
- 2026年考研管综199真题(试卷+答案)
- 2026年建党105周年党史知识竞赛题库及答案
- 2026年10月自考动漫艺术概论试题及标准答案
- 颈椎病康复指导
- 亲爱的你啊混声四部合唱简谱
- 中核集团校招面试题及答案(2026版)
- 海康威视iVMS-8700智能建筑综合管理平台 软件技术白皮书
- 首届全国行业职业技能竞赛(电力交易员)大赛考试题(附答案)
评论
0/150
提交评论