版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第5章 逻辑运算和选择结构程序设计,本次课程主要内容,关系运算符和关系表达式 逻辑运算符和逻辑表达式 条件运算符和条件运算 if语句 switch语句和break语句,关系运算,关系运算:对两个运算量进行大小关系比较的运算,运算结果为1(逻辑真)或0(逻辑假)。 关系运算符(按从高到低顺序): 、 =、 = =、 != 关系表达式,用关系运算符连接起来的两个表达式: 表达式 关系运算符 表达式,优先级:低于算术运算符,高于赋值运算符,举例: xy!=z等价: (xy) != z x= = yyz等价: (xy) z zx+y等价: z (x+y) x=yz等价: x = (yz),逻辑运算符和
2、逻辑表达式,逻辑运算符: scanf(%c, ,if 语句,if语句的三种形式: 实现单分支选择结构的形式 实现双分支选择结构的形式 实现多分支选择的形式,if语句 之单分支选择结构,一般形式: if(表达式)语句 说明:当表达式的结果为非0时,执行后面的语句,否则不执行。,单分支选择结构流程图,【5.2】将输入的三个数按照从小到大的顺序输出,main() float a,b,c,t; scanf(%f%f%f, ,if语句 之双分支选择结构,一般形式: if(表达式) 语句1 else 语句2 说明: 当表达式的值为非0时,执行语句1,否则执行语句2。,双分支选择结构流程图,【5.3】显示输
3、出从终端输入的两个整数中绝对值较大的,main() int x1,y1,x2,y2; scanf(%d,%d, ,条件表达式不能取代一般的if语句,只有在if语句中内嵌的语句为赋值语句(且两个分支都给同一个变量赋值)时才能代替if语句。,运行情况: 23,34 34,if语句 之多分支选择结构,一般形式: if(表达式)语句1 else if(表达式)语句2 else if(表达式)语句3 else if(表达式)语句n else 语句n+1 说明:各个表达式按顺序求值,如果某个表达式的值为非0,则执行与其相关的那条语句,并由此结束整个if语句。,多分支选择结构流程图,if语句的嵌套,格式一:
4、 if( ) if( )语句1 else语句2 else if()语句3 else 语句4,格式二: if () if()语句1 else if()语句2 else 语句3,含义:在if语句中又包含一个或多个if语句称为if语句的嵌套。,注意if与else 的配对关系。,【程序5.4】判断输入的字符是数字、大写字母、小写字母或其他字符。,#include main() char c; printf(Enter a character:); c=getchar(); if(c=0 ,【程序5.5】解一元二次方程ax2+bx+c=0。,一元二次方程的解的情况有下列几种可能: a=0,不是二次方程;
5、 b2-4ac=0,有两个相等实根: b2-4ac0,有两个不等实根: b2-4ac0,有两个共轭实根。,分析,一元二次方程 NS图,#include main() float a,b,c,d,x1,x2,p,q; scanf(%f,%f,%f,源程序:,未完,待续,else if(d1e-6) x1=(-b+sqrt(d)/(2*a); x2=(-b-sqrt(d)/(2*a); printf(has distinct real roots:%8.4f and %8.4fn,x1,x2); else p=-b/(2*a); q=sqrt(-d)/(2*a); printf(has compl
6、ex roots:n); printf(%8.4f+%8.4fin,p,q); printf(%8.4f-%8.4fin,p,q); ,switch语句和break语句,switch 语句:是专门用于实现多分支选择的语句。 break语句:终止switch语句的执行。 switch语句的一般形式: switch(表达式) case 常量表达式 1:语句 1 case 常量表达式 2:语句 2 case 常量表达式 n:语句 n default:语句 n+1 ,Switch(t_type) case A:printf(“RMB60.00”);break; /*大客车*/ case B:print
7、f(“RMB50.00”);break; /*大货车*/ case C:printf(“RMB40.00”);break; /*面包车*/ case D:printf(“RMB20.00”);break; /*小轿车*/ default: printf(“RMB10.00”); /*其他车辆*/ ,例:公路收费站的车辆收费问题。,说明:变量“t_type”用来表示汽车的类型。,说明:,switch 语句中的“表达式”和case后面的“常量表达式”的结果值的类型应该一致。 每一个case的常量表达式的值必须互不相同,否则出现矛盾现象。 各个case的出现次序不影响执行结果。 执行完一个case后面的语句后,流程控制转移下一个case继续执行,除非有break语句跳出switch。 default 语句为选择项,可有可无。另外,default 后面可以不加break语句。,【程序5.6】根据考试成绩的等级打印出百分制分数段:,#include main() char grade; grade=getchar(); switch(grade) case a:printf(85100n);break; case b:printf(7084n);break; ca
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 医学解剖考试题库及答案
- 医疗器械经营企业环境卫生管理培训试题及答案
- 提高住院患者大小便标本留取合格率
- 安环科(副)科长安全生产责任制培训
- 2025《西厢记 长亭送别》中崔莺莺的爱情心理变化课件
- 电力安全隐患排查治理管理办法培训课件
- 2026年广东省广州市单招职业倾向性考试题库带答案详解(夺分金卷)
- 空压站员工岗位职责培训
- 2026年广西农业职业技术大学单招职业适应性考试题库带答案详解(完整版)
- 2026年广西工业职业技术学院单招职业技能测试题库附答案详解(培优)
- 2025年度民办非企业单位工作计划
- 《游园》课件统编版高中语文必修下册
- 人教版小学五年级美术下册全册教案
- HG∕T 2059-2014 不透性石墨管技术条件
- 英语专业四级听力50篇
- 液气分离器教材
- HG/T 22820-2024 化工安全仪表系统工程设计规范(正式版)
- 西方社会思想两千年智慧树知到期末考试答案章节答案2024年复旦大学
- 基于人工智能的文化遗产保护与传承策略
- 人教B版新课标高中数学选择性必修第二册电子课本
- 郴州职业技术学院单招《英语》考试复习题库(含答案)
评论
0/150
提交评论