清华大学出版社:《C语言程序设计》课程教学资源(PPT课件讲稿)第5章 选择结构程序设计

清华大学出版社 TSINGHUA UNIVERSITY PRESS 第5章 选择结构程序设计 5.1 关系运算符和关系表达式 5.2 逻辑运算符和逻辑表达式 5.3 if语句 5.4 switch语句 5.5程序举例 习题
5.1 关系运算符和关系表达式 5.2 逻辑运算符和逻辑表达式 5.3 if语句 5.4 switch语句 5.5 程序举例 习题 第5章 选择结构程序设计

清华大学出版社 TSINGHUA UNIVERSITY PRESS 在第3章中已介绍了选择结构,它是三种基本 结构之一。在大多数程序中都会包含选择结 构。它的作用是,根据所指定的条件是否满 足,决定从给定的两组操作选择其一。在本 章中介绍如何用c语言实现选择结构。在c语 言中选择结构是用f语句实现的。f语句最常 用的形式是 if(关系表达式)语句1else语句2 例如: if (x>0)y=1;else y=-1; 其中x>0是一个关系表达式。“>”是一个关系 运算符
在第3章中已介绍了选择结构,它是三种基本 结构之一。在大多数程序中都会包含选择结 构。它的作用是,根据所指定的条件是否满 足,决定从给定的两组操作选择其一。在本 章中介绍如何用c语言实现选择结构。在c语 言中选择结构是用if语句实现的。if语句最常 用的形式是 if (关系表达式)语句1 else 语句2 例如: if ( x>0 ) y=1; else y=-1; 其中x>0是一个关系表达式。“>”是一个关系 运算符

清华大学出版社 TSINGHUA UNIVERSITY PRESS 5.1关系运算符和关系表达式 关系运算是逻辑运算中比较简单的一种。所谓“关 系运算”实际上是“比较运算”。将两个值进行比 较,判断其比较的结果是否符合给定的条件。例如, a>3是一个关系表达式,大于号(>)是一个关系运 算符,如果a的值为5,则满足给定的“a>3”条件, 因此关系表达式的值为“真”(即“条件满足”); 如果a的值为2,不满足“a>3”条件,则称关系表 达式的值为“假
5.1 关系运算符和关系表达式 关系运算是逻辑运算中比较简单的一种。所谓“关 系运算”实际上是“比较运算”。将两个值进行比 较,判断其比较的结果是否符合给定的条件。例如, a>3是一个关系表达式,大于号(>)是一个关系运 算符,如果a的值为5,则满足给定的“a>3”条件, 因此关系表达式的值为“真”(即“条件满足”); 如果a的值为2,不满足“a>3”条件,则称关系表 达式的值为“假

清华大学出版社 TSINGHUA UNIVERSITY PRESS 5.1.1关系运算符及其优先次序 C语言提供6种关系运算符: 优先级相同(高): ①(大于) ④>=(大于或等于) 优先级相同(低): ⑤==(等于) ⑥!=(不等于) 关于优先次序: (1)前4种关系运算符(,>=)的优先级别相同,后 两种也相同。前4种高于后2种。例如,“>”优先于“=”。 而“>”与“<”优先级相同
5.1.1 关系运算符及其优先次序 C语言提供6种关系运算符: 优先级相同(高): ① <(小于) ② <=(小于或等于) ③ >(大于) ④ >=(大于或等于) 优先级相同(低): ⑤ = = (等于) ⑥ !=(不等于) 关于优先次序: (1) 前4种关系运算符(<,<=,>,>=)的优先级别相同,后 两种也相同。前4种高于后2种。例如,“>”优先于“==”。 而“>”与“<”优先级相同

清华大学出版社 TSINGHUA UNIVERSITY PRESS 算术运算符 1(高) (2)关系运算符的优先级低于算术运 算符。 关系运算符 (3)关系运算符的优先级高于赋值运 赋值运算符「(低〉 算符。 以上关系见图5.1。 例如: 图5.1 c>a十b 等效于c>(a+b) a>b==c 等效于(a>b)==( a==bc 等效于a=(b>c)
(2) 关系运算符的优先级低于算术运 算符。 (3) 关系运算符的优先级高于赋值运 算符。 以上关系见图5.1。 例如: c>a+b 等效于 c>(a+b) a>b==c 等效于(a>b)==c a==b<c 等效于a==(b<c) a=b>c 等效于a=(b>c) 图5.1

清华大学出版社 TSINGHUA UNIVERSITY PRESS 5.1.2关系表达式 用关系运算符将两个表达式(可以是算术表达式或关 系表达式、逻辑表达式、赋值表达 式、字符表达式)连接起来的式子,称关系表达式。 例如,下面都是合法的关系表达式: a>b,a+b>b+c, (a=3)>(b=5), 'a'b)>(b=0”的值为“真”。c语言没有逻辑型数据 Pascali语言以True表示“真”,以false表示 “假”。PascaL和FORTRAN等语言都有逻辑型 变量和逻辑型常
5.1.2 关系表达式 用关系运算符将两个表达式(可以是算术表达式或关 系表达式、逻辑表达式、赋值表达 式、字符表达式)连接起来的式子,称关系表达式。 例如,下面都是合法的关系表达式: a>b, a+b>b+c, (a=3)>(b=5), 'a'< 'b', (a>b)>(b<c) 关系表达式的值是一个逻辑值,即“真”或 “假”。例如,关系表达式“5==3”的值为“假”, “5>=0”的值为“真”。c语言没有逻辑型数据 (Pascal语言以True表示“真”,以false表示 “假”。PascaL和FORTRAN等语言都有逻辑型 变量和逻辑型常

清华大学出版社 TSINGHUA UNIVERSITY PRESS 量),以1代表“真”,以“0”代表“假”。例如, a=3,b=2,c=1,则: 关系表达式“a>b”的值为“真”,表达式的值为1。 关系表达式“(a>b)==c”的值为“真”(因为a>b的 值为1,等于c的值),表达式的值为1。 关系表达式“b十cbd的值为1。 f=a>b>cf的值为0(因为“>”运算符是自左至右 的结合方向,先执行“a>b”得值为1,再执行关 系运算“1>c”,得值0,赋给)
量),以1代表“真”,以“0”代表“假”。例如, a=3,b=2,c=1,则: 关系表达式“a>b”的值为“真”,表达式的值为1。 关系表达式“(a>b)==c”的值为“真”(因为a>b的 值为1,等于c的值),表达式的值为1。 关系表达式“b+c<a”的值为“假”,表达式的值 为0。 如果有以下赋值表达式: d=a>bd的值为1。 f=a>b>cf的值为0 (因为“>”运算符是自左至右 的结合方向,先执行“a>b”得值为1, 再执行关 系运算“1>c”,得值0,赋给f)

清华大学出版社 TSINGHUA UNIVERSITY PRESS 5.2逻辑运算符和逻辑表达式 用逻辑运算符将关系表达式或逻辑量连接起来 的式子就是逻辑表达式。在basicz和Pascali语言 中有以下形式的逻辑表达式(AND是逻辑运算 符): (a>b)AND(x>y) 如果a>b且x>y,则上述逻辑表达式的值为 “真”。下面介绍c语言中的逻辑运算符和逻 辑运算。 5.2.1逻辑运算符及其优先次序 C语言提供三种逻辑运算符:
用逻辑运算符将关系表达式或逻辑量连接起来 的式子就是逻辑表达式。在basic和Pascal语言 中有以下形式的逻辑表达式(AND是逻辑运算 符): (a>b)AND(x>y) 如果a>b且x>y,则上述逻辑表达式的值为 “真”。下面介绍c语言中的逻辑运算符和逻 辑运算。 5.2.1 逻辑运算符及其优先次序 C语言提供三种逻辑运算符: 5.2 逻辑运算符和逻辑表达式

清华大学出版社 TSINGHUA UNIVERSITY PRESS ()&&逻辑与(相当于其他语言中的aND) (2)I逻辑或(相当于其他语言中的0R) (3)!逻辑非(相当于其他语言中的NOT) “&&”和“”是“双目(元)运算符”,它要求有两个 运算量(操作数),如(a>b)&&(>y),(a>b川(x> y)。“”是“一目(元)运算符”,只要求有一个运 算量,如(a>b)。 逻辑运算举例如下: a&&b若a、b为真,则a&&b为真。 ab若a、b之一为真,则ab为真。 !a若a为真,则a为假
(1) &&逻辑与(相当于其他语言中的aND) (2) || 逻辑或(相当于其他语言中的OR) (3) ! 逻辑非(相当于其他语言中的NOT) “&&”和“||”是“双目(元)运算符”,它要求有两个 运算量(操作数),如(a>b)&&(x>y),(a>b)||(x> y)。 “!”是“一目(元)运算符”,只要求有一个运 算量,如(a>b)。 逻辑运算举例如下: a&&b若a、b为真,则a&&b为真。 a||b 若a、b之一为真,则a||b为真。 !a 若a为真,则!a为假

清华大学出版社 TSINGHUA UNIVERSITY PRESS 在一个逻辑表达式中如果包含多个逻辑运算符,如 !a &&blxy &&c 按以下的优先次序: (1):(非)→&&(与)(或),即“!”为三者中最高的。 (2)逻辑运算符中的“&&”和“”低于关系运算符, “!”高于算术运算符。见图5.2。 (非) (高) 算术运算符 关系运算符 &&和川 赋值运算符 (低) 图5.2
在一个逻辑表达式中如果包含多个逻辑运算符,如 !a && b||x>y && c 按以下的优先次序: (1) !(非)→&&(与)→(或), 即“!”为三者中最高的。 (2) 逻辑运算符中的“&&”和“||”低于关系运算符, “!”高于算术运算符。见图5.2。 图5.2
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 清华大学出版社:《C语言程序设计》课程教学资源(PPT课件讲稿)第4章 最简单的c程序设计——顺序程序设计.ppt
- 清华大学出版社:《C语言程序设计》课程教学资源(PPT课件讲稿)第3章 数据类型、运算符与表达式.ppt
- 清华大学出版社:《C语言程序设计》课程教学资源(PPT课件讲稿)第2章 程序的灵魂——算法.ppt
- 清华大学出版社:《C语言程序设计》课程教学资源(PPT课件讲稿)第1章 C语言概述.ppt
- 《C语言程序设计》课程教学课件(PPT讲稿)第12章 文件.ppt
- 《C语言程序设计》课程教学课件(PPT讲稿)第11章 位运算.ppt
- 《C语言程序设计》课程教学课件(PPT讲稿)第10章 结构与链表.ppt
- 《C语言程序设计》课程教学课件(PPT讲稿)第09章 指针.ppt
- 《C语言程序设计》课程教学课件(PPT讲稿)第08章 编译预处理.ppt
- 《C语言程序设计》课程教学课件(PPT讲稿)第07章 函数.ppt
- 《C语言程序设计》课程教学课件(PPT讲稿)第06章 数组.ppt
- 《C语言程序设计》课程教学课件(PPT讲稿)第05章 循环结构程序设计.ppt
- 《C语言程序设计》课程教学课件(PPT讲稿)第04章 选择结构程序设计.ppt
- 《C语言程序设计》课程教学课件(PPT讲稿)第03章 顺序结构程序设计.ppt
- 《C语言程序设计》课程教学课件(PPT讲稿)第02章 数据类型、运算符与表达式.ppt
- 《C语言程序设计》课程教学课件(PPT讲稿)第01章 C语言概述.ppt
- 《C语言程序设计》课程教学课件(PPT讲稿)第七章 结构体与共用体.ppt
- 《C语言程序设计》课程教学课件(PPT讲稿)第四章 数组.ppt
- 《C语言程序设计》课程教学课件(PPT讲稿)第六章 指针.ppt
- 《C语言程序设计》课程教学课件(PPT讲稿)第八章 文件.ppt
- 清华大学出版社:《C语言程序设计》课程教学资源(PPT课件讲稿)第6章 循环控制.ppt
- 清华大学出版社:《C语言程序设计》课程教学资源(PPT课件讲稿)第7章 数组.ppt
- 清华大学出版社:《C语言程序设计》课程教学资源(PPT课件讲稿)第8章 函数.ppt
- 清华大学出版社:《C语言程序设计》课程教学资源(PPT课件讲稿)第9章 预处理命令.ppt
- 清华大学出版社:《C语言程序设计》课程教学资源(PPT课件讲稿)第10章 指针.ppt
- 清华大学出版社:《C语言程序设计》课程教学资源(PPT课件讲稿)第12章 位运算.ppt
- 清华大学出版社:《C语言程序设计》课程教学资源(PPT课件讲稿)第13章 文件.ppt
- 清华大学出版社:《C语言程序设计》课程教学资源(PPT课件讲稿)第14章 C++对C的扩充.ppt
- 清华大学:《C语言程序设计》课程教学资源(PPT课件讲稿)第一讲 预备知识(郑莉、安颖莲).pps
- 清华大学:《C语言程序设计》课程教学资源(PPT课件讲稿)第二讲 C语言基础.pps
- 清华大学:《C语言程序设计》课程教学资源(PPT课件讲稿)第三讲 C语言程序的基本控制结构.pps
- 清华大学:《C语言程序设计》课程教学资源(PPT课件讲稿)第四讲 数组的概念及应用.pps
- 清华大学:《C语言程序设计》课程教学资源(PPT课件讲稿)第五讲 函数.pps
- 清华大学:《C语言程序设计》课程教学资源(PPT课件讲稿)第六讲 指针.pps
- 清华大学:《C语言程序设计》课程教学资源(PPT课件讲稿)第七讲 查找与排序算法.pps
- 清华大学:《C语言程序设计》课程教学资源(PPT课件讲稿)第八讲 结构与联合.pps
- 清华大学:《C语言程序设计》课程教学资源(PPT课件讲稿)第九讲 位运算 枚举 类型定义 编译预处理.pps
- 清华大学出版社:《C语言程序设计》课程教学资源(PPT课件讲稿)第11章 结构体与共用体.ppt
- 清华大学:《C语言程序设计》课程教学资源(PPT课件讲稿)第十讲 文件.pps
- 清华大学:《C语言程序设计》课程教学资源(PPT课件讲稿)第十一讲 数据结构基础(一).pps