分支结构程序的设计.ppt_第1页
分支结构程序的设计.ppt_第2页
分支结构程序的设计.ppt_第3页
分支结构程序的设计.ppt_第4页
分支结构程序的设计.ppt_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

分支结构程序的设计,主要内容,if语句 switch 语句,C语言中支持分支结构的语句包括: ifelse语句 ifelse ifelse语句(多分支结构) switch语句(多分支结构),一、ifelse语句,格式: if (测试表达式) 语句1; else 语句2; 功能: 如果表达式值为1或非0值(真),则执行语句1;否则执行语句2。,流程图,例:求一个数的绝对值。 if (x=0) y=x; else y=-x;,例:输入两个实数,输出其中最小的。 float x, y, z; scanf(“%f%f“, ,例:输入一个字符,判断它是否是09的阿拉伯数字。,说明:测试表达式可以是: 关系表达式 逻辑表达式 数值表达式 其他表达式,如: b=3; if (a=2) printf(“%dn“,a); else printf(“%dn“,b); 结果:2 说明:在此a=2为赋值表达式,因不等于0,故为真(条件成立)。 这与关系表达式a=2不同( a=2只有当a=2时条件才成立)。,说明:语句1或语句2如果是复合语句(即由多条语句构成),那么必须用花括号括起来,以避免引起逻辑错误。,如:试对比以下两段程序。 (程序1) a=4,b=7; if (ab) t=a; a=b; b=t; (程序2) a=4,b=7; if (ab) t=a; a=b; b=t;,ifelse语句的嵌套,在if语句的语句1或语句2中包含另一个或几个if语句,以解决更复杂的问题。,例:求解ax2+bx+c=0的完全解。,例:促销折扣问题。,ifelse语句嵌套时的注意事项: 当if与else数目不一致时,除非用花括号明确配对关系,否则else总是与其前最近的if配对。如: if (ab) if (bc) c=a; else c=b; 程序编写时最好使用缩进格式,以便使层次关系更为清晰。,条件运算符和条件表达式,条件运算符:为三元运算符,由“?“与“:“组成。 条件表达式:由条件运算符连接三个运算对象所构成的表达式。 条件表达式的格式与功能: ?: 若0,则将的值作为整个条件表达式的值。否则将的值作为条件表达式的值。(相当于一个ifelse语句。),例:设a=10,b=20,计算表达式的值。 ab ? a+b : a-b 结果:-10 a-b0 ? a*b : a*3 结果:200,条件运算符的优先级:高于赋值运算符和逗号运算符,低于其他运算符。 条件运算符的结合性:从右到左。 如: exp1?exp2:exp3?exp4:exp5 exp1?exp2:(exp3?exp4:exp5) exp1?exp2?exp3:exp4:exp5 exp1?(exp2?exp3:exp4):exp5,条件表达式的应用:代替if.else 语句,给变量赋值。 例: if (ab) c=a*b; else c=a/b; c=(ab)?a*b:a/b;,二、 if else ifelse语句,多分支结构 格式: if (测试表达式1) 语句1; else if (测试表达式2) 语句2; else if (测试表达式n) 语句n; else 语句n+1;,功能:依次判断各个测试表达式(即条件)的值,当发现某个表达式值为1(真),则执行相应的语句,并跳过其余部分。如果所有表达式值都为0(假),则执行最后一个else的语句(如果没有最后的else语句,则不执行任何操作)。 流程图 :(见教材),例,例:促销折扣问题。,三、switch语句,多分支结构,格式: switch (e) case c1: 语句1; break;

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论