




已阅读5页,还剩38页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第4章选择结构,本章要点:4.1关系运算和逻辑运算4.2if语句和用if语句构成的选择结构4.3条件表达式构成的选择结构4.4switch语句以及用switch语句和break语句构成的选择结构4.5语句标号和goto语句,4.1关系运算和逻辑运算,4.1.1C语言中的逻辑值C语言中,参与逻辑运算的量为非零值或整数零,非零值和整数零分别表示运算量为“真”或“假”。逻辑运算的结果值,即逻辑表达式的值应该是一个逻辑值“真”或“假”。C语言编译系统在给出逻辑运算结果时,以数值1代表“真”,以0代表“假”,但在判断一个量是否为“真”时,以0代表“假”,以非0代表“真”。,4.1.2关系运算符和关系表达式关系运算实际上就是“比较运算”,将两个数进行比较,判断比较的结果是否符合指定的条件。1关系运算符关于关系运算符的说明:(1)表4-1中前4种运算符(、=)的优先级别相同,后两种也相同。前4种优先级别高于后两种。如,“”优先级别高于“!=”。(2)关系运算符与算术运算符、赋值运算符的优先级关系如下:算术运算符(高)关系运算符(中)赋值运算符(低)即:算术运算符优先级别高于关系运算符,关系运算符优先级别又高于赋值运算符。(3)关系运算符的结合方向是“自左向右”。,C语言有六种关系运算符,如表4-1所示。表4.1C语言中的关系运算符,2关系表达式及关系表达式的值用关系运算符将两个表达式(算术表达式、关系表达式、逻辑表达式、赋值表达式、字符表达式等)连接起来的式子,称关系表达式。例如,a=b,a=c等。在C语言中,关系表达式的结果值为1或0。当关系表达式成立时,其结果值为1,否则,其值为0。若a=10,b=6,表达式a=b为“真“,其值为1。当关系运算符两边的值类型不一致时,系统将自动进行转换。转换规则与双目运算中的类型转换规则相同。,关系运算示例:试求x=531的值。分析:x=531相当于:x=(53)1=11=0故x的值为0。关系表达式主要用于选择结构中的条件判断。重点提示:表示“等于”关系的运算符“=”和“不等于”关系的运算符“!=”与数学中的表示方法不同。在使用它们时请予以注意,以免写错关系运算符而导致错误的结果。例如,欲判断x是否等于0,如果写成:x=0就不是判断x是否等于0的含义了,而成了把0赋值给变量x。正确的写法应为:x=0。,4.1.3逻辑运算符和逻辑表达式1C语言中的逻辑运算符关系表达式只适于描述单一的条件,对于较复杂的复合条件就需要将若干个关系表达式连接起来才能描述,如描述“x大于0且不等于2”,就需要将两个关系表达式x0和x!=2连接起来:x0break;在A、B两种情况下,均执行相同的语句,即输出“60”。(5)在switch语句中,只有最后一个分支(default)中的break语句的存在于否不影响执行结果。因为没有这个break语句,执行该分支的所有语句后也会自动退出switch语句。而其余各分支中的break语句有与无时的流程是完全不同的。例如在上例中,如果caseA、B后面没有break语句,则当grade=A时,程序从printf(85100n)开始执行,输出结果为:851007084error,这是因为case后面的常量表达式实际上只起语句标号作用,而不起条件判断作用,即“只是开始执行处的入口标号”。因此,一旦与switch后面圆括号中表达式的值匹配,就从此标号处开始执行,而且执行完一个case后面的语句后,若没遇到break语句,就自动进入下一个case继续执行,而不再判断是否与之匹配,直到遇到break语句才停止执行,退出break语句。因此,若想执行一个case分支后立即跳出switch语句,就必须在此分支的最后添加一个break语句。重点提示:在switch语句中,default总是放在最后,这时,default后不需要break语句。因此只有最后一个分支(default)中的break语句的存在于否不影响执行结果。,4.5语句标号和goto语句,4.5.1语句标号在C语言中,语句标号不必特殊加以定义,标号可以是任意合法的标识符,当在标识符后面加一个冒号,该标识符就成为一个语句标号。如student:等。注意,C语言中,语句标号必须是标识符,而不能是数值常量形式,标号可以和变量同名。通常,标号用作goto语句的转向目标。如:gotostate;C语言中,可以在任何语句前加上语句标号,如:state:printf(“endn”);,4.5.2goto语句goto语句称为无条件转向语句,goto语句的一般形式为:goto语句
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 期末测试卷5年级数学试卷
- 枣庄移动围挡施工方案(3篇)
- 拼多多超市活动策划方案(3篇)
- 儿童舞蹈摄影活动方案策划(3篇)
- 智慧场馆施工方案(3篇)
- 奇石活动策划方案模板(3篇)
- 南岸别墅格栅施工方案(3篇)
- 饮酒科目考试题库及答案
- 心理咨询题目测试及答案
- 心理测试题目加分及答案
- 跨境电子商务专业教学标准(高等职业教育专科)2025修订
- 设备维护方案(3篇)
- 护理操作管理课件
- 肉类加工间管理制度
- 2025年陕西、山西、青海、宁夏高考历史试卷真题(含答案解析)
- 2024-2025学年苏教版四年级下学期期末测试数学试卷(含答案)
- 动脉导管未闭封堵术的医疗护理
- 农村供水管网延伸工程可行性研究报告
- 快递公司快递员管理制度
- T/CECS 10207-2022榫卯式钢管脚手架构件
- 师德师风警示教育课件
评论
0/150
提交评论