当前课程知识点:C语言程序设计 >  第5章 选择结构程序设计 >  5.1 关系运算符和关系表达式 >  关系运算符和关系表达式

返回《C语言程序设计》慕课在线视频课程列表

关系运算符和关系表达式在线视频

下一节:逻辑运算符和逻辑表达式

返回《C语言程序设计》慕课在线视频列表

关系运算符和关系表达式课程教案、知识点、字幕

同学们大家好

本节我们学习C语言中的关系运算符

和关系表达式

我们知道

在顺序结构中

各语句是按自上而下顺序执行的

执行完上一条语句就自动执行下一条语句

这是最简单的程序结构

实际上在很多情况下

我们往往需要根据某个条件是否满足

来决定是否执行指定的操作任务

或者从给定的两种

或多种操作中选择其一

这就是选择结构要解决的问题

在现实生活中

需要进行判断和选择的情况是很多的

例如

如果你在家

我去拜访你 这时

我们就需要判断你是否在家

来决定是否执行拜访这个操作任务

例如

某超市规定

如果购买金额小于200元则全额付款

如果购买金额大于或等于200元则九折付款

那么当我们结账时

就需要判断金额是否超过200元

从而在全额付款或九折付款

这两种操作中选择其一

程序总是为解决某个实际问题而设计的

在处理以上的这些问题时

就需要根据不同的条件执行不同的代码

这就是选择结构

选择结构在我们的实际应用程序中

可以说是无处不在

因此

正确掌握选择结构程序设计方法

对于我们编写实际应用程序尤为重要

在选择结构中

通常使用关系表达式和逻辑表达式

来实现条件的构造

在C语言中

所谓关系运算又称比较运算

将两个数值进行比较

判断其比较的结果是否符合给定的条件

例如

a大于3是一个关系表达式

大于号是一个关系运算符

如果a的值为5

则满足给定的a大于3条件

那么关系表达式的值为真

即条件满足

如果a的值为2

不满足a大于3条件

那么关系表达式的值为假

即条件不满足

C语言中的关系运算符有如图所示的六种

使用时我们需要注意以下两点

第一

前面四种关系运算符的优先级别相同

后两种也相同

但前四种的优先级高于后两种

第二

关系运算符的优先级

低于算术运算符

高于赋值运算符

例如

c > a + b 等价于

c>(a+b)

a > b != c 等价于

(a>b)!=c

a == b < c 等价于

a==(b

a = b > c 等价于

a==(b>c)

a + 2 < c – d 等价于

(a + 2) < (c - d)

用关系运算符将两个数值

或数值表达式连接起来的式子

称关系表达式

注意

关系表达式的值是一个逻辑值

在C语言中

用1代表真

用0代表假

我们在求解关系表达式的值时

当关系成立时

表达式值为真记作1

当关系不成立时

表达式值为假记作0

例如

若a=3,b=2,c=1

关系表达式

(a>b)==c

由于a> b的值为1

1等于c的值 所以表达式的值为1

关系表达式 b+c小于a

由于b+c的值为3

3小于a关系为假

所以表达式的值为0

如果有以下赋值表达式

f=a>b>c

因为>运算符是自左至右的结合方向

先执行a> b的值为1

再执行关系运算1>c值为0

赋给f

所以f的值为0

注意

C语言中的关系表达式

与数学中数学表达式是不同的

表达式3>2>1

在数学中该表达式是成立的

但在C语言中

该表达式的值为0

下面我们一起来做两道思考题

第一题

已知a = 1,b = 2,c = 3

请问 表达式 d = a != c == b < a < c的值是多少

回答正确

d 的值为1

第二题

判断整型变量n为偶数

同学们想一想

该如何设计判断条件呢

应该写作 n和2的余数

等于0 本节的内容就讲到这里

同学们再见

C语言程序设计课程列表:

第1章 C语言程序设计预备知识

-计算思维与计算机

--计算思维与计算机

--计算思维与计算机

--计算思维和计算机

第2章 C语言程序设计基础

-2.1 程序设计语言的发展及其特点和应用

--程序设计语言的发展及其特点和应用

--程序设计语言的特点及发展

- 2.2 C语言程序的基本结构及编制C语言程序的基本步骤

-- C语言程序的基本结构及编制C语言程序的基本步骤

--C语言程序的结构和编制步骤

第3章 基本数据类型、运算符与表达式

-3.1 C语言的数据类型

--C语言的数据类型

--C语言的数据类型

-3.2 常量

--常量

--常量

-3.3 什么是变量

--什么是变量

--什么是变量

-3.4 如何进行算术运算

--如何进行算术运算

--如何进行算术运算

-3.5 赋值运算符和逗号运算符

--赋值运算符和逗号运算符

--赋值运算符和逗号运算符

-3.6 数据类型转换

--数据类型转换

--数据类型转换

第4章 基本输入输出和顺序程序设计

-4.1 格式化输出printf

--格式化输出printf

--格式化输出

-4.2 格式化输入scanf及字符数据的非格式化输入输出

--格式化输入scanf及字符数据的非格式化输入输出

--格式化输入

第5章 选择结构程序设计

-5.1 关系运算符和关系表达式

--关系运算符和关系表达式

--关系运算符和关系表达式

-5.2 逻辑运算符和逻辑表达式

--逻辑运算符和逻辑表达式

--逻辑运算符和逻辑表达式

-5.3 条件运算符和条件表达式

--条件运算符和条件表达式

--条件运算符和条件表达式

-5.4 if语句

--if语句

--if语句

-5.5 switch语句

--switch语句

--switch语句

第6章 循环结构程序设计

-6.1 while语句

--while语句

--while语句

--do-while语句

-6.2 for语句

--for语句

--for语句

-6.3 循环的嵌套

--循环的嵌套

--循环的嵌套

-6.4 break语句和continue语句

--break语句和continue语句

--break和continue语句

第7章 数组

-7.1 一维数组的定义和引用

--一维数组的定义和引用

--一维数组的定义和引用

-7.2 一维数组的赋值

--一维数组的赋值

--一维数组的赋值

-7.3 二维数组的定义和引用

--二维数组的定义和引用

--二维数组的定义和引用

-7.4 二维数组的赋值

--二维数组的赋值

--二维数组的赋值

-7.5 字符串的本质

--字符串的本质

--字符串的本质

-7.6 字符串操作的常用函数

--字符串操作的常用函数

--字符串常用函数

-7.7 字符串数组

--字符串数组

--字符串数组

第8章 函数

-8.1 函数概述

--函数概述

--函数概述

-8.2 有参函数

--有参函数

--有参函数

-8.3 函数参数的传递方式

--函数参数的传递形式

--函数参数的传递方式

-8.4 变量的作用域和生存期

--变量的作用域和生存期

--变量的作用域和生存期

-8.5 变量的存储类型

--变量的存储类型

--变量的存储类型

-8.6 函数的嵌套和递归调用

--函数的嵌套和递归调用

--函数的嵌套和递归调用

-8.7 函数的作用域与封装

--函数的作用域与封装

--函数的作用域与封装

第9章 指针

-9.1 指针变量的概念(上)

--指针变量的概念(上)

--指针变量的概念(上)

-9.2 指针变量的概念(下)

--指针变量的概念(下)

--指针变量的概念(下)

-9.3 指向一维数组的指针变量

--指向一维数组的指针变量

--指向一维数组的指针变量

-9.4 指向二维数组的指针变量(上)

--指向二维数组的指针变量

--指向二维数组的指针变量(上)

-9.5 指向二维数组的指针变量(下)

--指向二维数组的指针变量(下)

--指向二维数组的指针变量(下)

-9.6 动态内存分配

--动态内存分配

--动态内存分配

第10章 预处理命令

-10.1 编译预处理

--编译预处理

第11章 复杂数据类型

-11.1 用户自己建立数据类型

--用户自己建立数据类型

--用户自己建立数据类型

-11.2 定义结构体类型变量

--定义结构体类型变量

--定义结构体类型变量

-11.3 结构体变量的引用与初始化

--结构体变量的引用与初始化

-11.4 结构体数组

--结构体数组

--结构体数组

-11.5 指向结构体类型数据的指针

--指向结构体类型数据的指针

--指向结构体类型数据的指针

第12章 文件

-12.1 文件的基本概念和文件指针

--文件的基本概念和文件指针

--文件的基本概念和文件指针

-12,2 文件的打开和关闭

--文件的打开和关闭

--文件的打开和关闭

-12.3 文本文件读写

--文本文件读写

--文本文件读写

-12.4 二进制文件读写

--二进制文件读写

--二进制文件读写

关系运算符和关系表达式笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。