c 语言 3 1,C语言程序设计(3-1).ppt

C语言程序设计(3-1)

根据表达式的不同值,选择不同的程序分支,又称开关语句。 清华大学 黄维通 设计制作 * 首先计算表达式的值,并逐个与其后的常量表达式值相比较, 分析: 根据score的不同,处理结果有多个,属多路分支问题。可以用if语句嵌套解决,也可以用switch语句解决。 下面示范使用switch 语句处理的技巧。 用if语句嵌套的方法,请同学课后完成。 if (score>=90) printf(“\nGot A!”); else if (score>=80) printf(“\nGot B!”); else if (score>=70) printf(“\nGot C!”); else if (score>=60) printf(“\nGot D!”); else printf(“\nGot E”); 思考:判断顺序是否可以交换? 清华大学 黄维通 设计制作 * 清华大学 黄维通 设计制作 * 多分支结构: (1) 重点分析“分解正整数”各位的算法。以4567为例,在黑板上演算。 a=x/1000; /*分解出千位、百位、十位、个位*/ b=(x%1000)/100; c=(x%100)/10; d=x%10; (2)虽然,使用switch语句处理多分支的情况,比较直观,易于理解,但并不适合所有场合。 使用switch解题的关键,通过分析找到表达式,将问题分成几种情况。在该问题中,需要判断多个数是否为零,不能用一个表达式来表示,所以应选择if语句嵌套的方式来实现。 * * 第3章 选择结构程序设计 讲在前面的…… 什么是算法? 为解决一个具体问题而采取的确定的有限的操作步骤,这里仅指计算机能执行的算法 程序=数据结构+算法 算法的表示方法 自然语言、流程图、N-S图、伪代码 C程序结构 C程序 源程序文件1 源程序文件2 源程序文件3 编译预处理命令 全局变量声明 函数1 函数n … 函数首部 函数体 局部变量声明 执行语句 构成程序的三种基本结构 顺序结构 选择结构 循环结构 已经证明,任何程序均可只用这三种结构综合描述 只用这三种结构编制的程序,叫结构化程序 程序必须符合结构化规则 结构化程序设计的核心思想 采用顺序、选择和循环三种基本结构作为程序设计的基本单元 只有一个入口; 只有一个出口; 无死语句,即不存在永远都执行不到的语句; 无死循环,即不存在永远都执行不完的循环。 采用“自顶向下、逐步求精”和模块化的方法进行结构化程序设计 B A 流程图 顺序结构 B N 如果 成绩<60 那么 通知补考 否则 告知你考试成绩 A Y 条 件P 分支结构(选择结构) 条 件P A 当型循环 直到型循环 真 假 假 条 件P A 假 真 循环结构 复合语句 {}括住的若干条语句构成一个复合语句 语句块内可以定义变量 变量仅在定义它的复合语句内有效 变量必须在复合语句的开头定义 复合语句可以用在任何可以使用语句的地方 选择结构的几种形式(一) 最常用形式 if-else if (表达式)语句1;else语句2;语句3 else部分可以没有 if (表达式)语句1;语句3 if-else嵌套使用时,注意else和谁配对的问题 表达式值非0时,执行语句1,然后语句3 表达式值为0时,执行语句2,然后语句3 当表达式值为0时,直接执行语句3 选择结构的几种形式(二) if的一种扩展形式 if (表达式) 语句1;else if (表达式)语句2;else if (表达式)语句3;…………else语句4;语句5; else部分可以没有 语句执行流程: 表达式1 语句1 真(非0) 假(0) 真(非0) 语句2 表达式2 真(非0) 表达式n 语句n 语句n+1 假(0) 假(0) 实例 体型判断。按“体指数”对肥胖程度进行划分: 体指数t = 体重w / (身高h)2 (w 单位为公斤,h单位为米) 当t < 18时,为低体重; 当t介于18和25之间时,为正常体重; 当t介于25和27之间时,为超重体重; 当t >= 27时,为肥胖。 编程从键盘输入身高h和体重w,根据给定公式计算体指数t,然后判断体重属于何种类型,给出提示。 用函数完成,已知函数声明为 void JudgeBodyIndex(float *height,float *weight); 注意形参的类型 ! 多路选择 switch (表达式) {case 常数1: 语句序列1;case 常数2: 语句序列

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值