




已阅读5页,还剩13页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第3章 C程序流程设计 3.1 算法及其描述 3.2 用C语句描述算法 3.3 选择型程序设计 3.4 循环型程序设计 C语言程序设计 第3章 C程序的流程设计 3.1 算法及其描述 程序=算法+数据结构 算法是对问题求解的方法和过程 的描述,它由解决问题的基本操作及 控制操作过程的控制结构组成。 ?算法的概念 ?算法的 基本特征 ?算法的 描述方法 第3章 C程序的流程设计 3.1 算法及其描述 l 有效性 l 确定性 l 有穷性 l 有零个或多个输入 l 至少一个输出 ?算法的概念 ?算法的 基本特征 ?算法的 描述方法 第3章 C程序的流程设计 3.1 算法及其描述 流程图 N-S图 PAD图 伪代码 ?算法的概念 ?算法的 基本特征 ?算法的 描述方法 第3章 C程序的流程设计 3.2 用C语句描述算法 第3章 C程序的流程设计 3.2 选择型程序设计 根据不同条件有选择地执行不同后 续命令集合的程序结构。 在C中,选择结构主要有if 结构和 switch结构。 ?选择结构含义 ?if结构 ?switch结构 ?if结构嵌套 ?选择结构应用 第3章 C程序的流程设计 3.2 选择型程序设计 形式: if (表达式) 语句组1; else 语句组2; 说明: A P B 非零零 格式: 示例: 请点击 ?选择结构含义 ?if结构 ?switch结构 ?if结构嵌套 ?选择结构应用 第3章 C程序的流程设计 3.2 选择型程序设计 示例: 问题:求一个数的绝对值。 分析:对任意一个数x,当x0时,其绝对值为-x,否 则其绝对值就是x。 其NS图为: |x|= x |x|=- x x0 ? 是 否 解答:C函数如下: double abstr(double x) if (x0.0) x=-x; else x=x; return (x); ?缺省else结 构如何写? 请点击 /* 缺省else结构 */ double abstr(double x) if (x0.0) x=-x; return (x); ?选择结构含义 ?if结构 ?switch结构 ?if结构嵌套 ?选择结构应用 第3章 C程序的流程设计 3.2 选择型程序设计 含义:在if语句中又包含一个或多个if语句的形式 。 格式:if ( ) if ( ) 语句; else 语句; . else . if ( ) 语句; else 语句; . 注:每个else都与其最近的if 配对。 示例: 请点击 ?选择结构含义 ?if结构 ?switch结构 ?if结构嵌套 ?选择结构应用 第3章 C程序的流程设计 3.2 选择型程序设计 示例: 问题:已知 ,编一个程序, 输入x的值,输出y值。 解答: main( ) int x, y; scanf(“%d”, if(x0) y=-1; else if (x= = 0) y=0; else y=1; printf(“x=%d, y=%dn”, x, y); ?选择结构含义 ?if结构 ?switch结构 ?if结构嵌套 ?选择结构应用 第3章 C程序的流程设计 3.2 选择型程序设计 格式:switch (表达式) case (常量表达式1): 语句块1; case (常量表达式2): 语句块2; case (常量表达式n): 语句块n; default :语句块n+1; 说明: 执行流程: 请点击 ?选择结构含义 ?if结构 ?switch结构 ?if结构嵌套 ?选择结构应用 第3章 C程序的流程设计 3.2 选择型程序设计 执行流程: 1、计算表达式的值; 2、找到与表达式的值相同的case常量表达式, 执行该case后边的语句序列,之后依次往下 执行各语句块。 执行流程示意图 : 请点击 ?选择结构含义 ?if结构 ?switch结构 ?if结构嵌套 ?选择结构应用 第3章 C程序的流程设计 3.2 选择型程序设计 表达式 语句序列1 语句序列2 语句序列n 语句序列n+1 执行流程示意图 思考:若每个语句块的最后一个语句均为break 语句,执行流程怎样?(请点击) ?选择结构含义 ?if结构 ?switch结构 ?if结构嵌套 ?选择结构应用 第3章 C程序的流程设计 3.2 选择型程序设计 表达式 语句序列1语句序列n语句序列n+1语句序列2 每个语句块的最后 一个语句均为break 语句的执行流程 示例: 请点击 Back ?选择结构含义 ?if结构 ?switch结构 ?if结构嵌套 ?选择结构应用 第3章 C程序的流程设计 3.2 选择型程序设计 示例: 问题:根据考试成绩的等级打印出百分制分数段。 解答:请点击 switch ( grade ) case A : printf(“85100n”) ; break; case B : printf(“7084n”); break; case C: printf(“6069n”); break; case D :printf(“60n”); break; default : printf(“error ”); Back ?选择结构含义 ?if结构 ?switch结构 ?if结构嵌套 ?选择结构应用 第3章 C程序的流程设计 3.2 选择型程序设计 例1:写一程序,判断某一年是否闰年。 解答:请点击 Run main( ) int year, leap; /* leap=1闰年,leap=0 非闰年 */ scanf(“%d”, leap=0; if (year%4= =0 if (leap= =1) printf(“%d is ”, year); else printf(“%d is not ”, year); printf(“a leap yearn”); 输入:1989 结果为:1989 is not a leap year 输入:2000 结果为:2000 is a leap yearNext ?选择结构含义 ?if结构 ?switch结构 ?if结构嵌套 ?选择结构应用 第3章 C程序的流程设计 3.2 选择型程序设计 例2:某运输公司对用户计算运费。距离(s)越远, 每公里运费越低。折扣为d (discount),每公里每 吨货物的基本运费为p (price),货物重w (weight), 总运费f (freight) ,f=p * w * s * (1- d)。 解答:请点击 ?选择结构含义 ?if结构 ?swit
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年钨冶炼行业当前竞争格局与未来发展趋势分析报告
- 2025年地源热泵行业当前发展现状及增长策略研究报告
- 2025年流动厨师食品安全业务知识考核试题A卷附答案
- 2024年林口县林业系统事业单位招聘考试《林业基础知识》试题及答案解
- 2024年建筑企业:施工员操作人员安全知识上岗培训考试题库与答案
- 2025年联考上海公务员事业单位考试事业单位考试公共基础知识模拟考试题库(含答案)
- 2025年电脑印刷设计师技能资格知识考试题与答案
- 2025版义务教育《艺术美术课程标准》测试题含答案
- 2025年陕西省安全员B证考试题(附答案)
- 2025年儿科护理学理论知识考核试题及答案
- 浮筒液位计演示教学课件
- (完整版)内孔数控车削加工(编程)教案
- 道亨铁塔长短腿基础配置系统-操作说明
- 皮瓣移植术后移植(再植)组织的局部观察课件
- DB11-T 1764.42-2020用水定额 第42部分:居民生活
- 蒂森克虏伯电梯 MC2-B控制系统用户手册
- 浅议可转让信用证的风险防范
- 医疗器械嵌入式软件注册描述文档
- 工程认证《机械设计》课程教学大纲
- 建设工程五方责任主体法定代表人授权书、项目负责人质量终身责任承诺书
- 星级精益班组管理考核评价标准
评论
0/150
提交评论