前言

一、人物简介

  • 第一位闪亮登场,有请今后会一直教我们C语言的老师 —— 自在。

  • 第二位上场的是和我们一起学习的小白程序猿 —— 逍遥。

二、构成和表示方式

  • 关系运算符的作用是判断符号两边大小的关系
  • C语言中的关系运算符主要有六个,如下表所示
运算符 名称 示例 描述
== 等于 a == b 判断a是否等于b
!= 不等于 a != b 判断a是否不等于b
> 大于 a > b 判断a是否大于b
< 小于 a < b 判断a是否小于b
>= 大于等于 a >= b 判断a是否大于等于b
<= 小于等于 a <= b 判断a是否小于等于b
  • 关系运算符的两边可以是变量、数值 或 表达式

变量

a > b
a <= b

数值

5 > 3
20 == a

表达式

a+b > c
a-b <= 6

三、关系运算符的应用

1、运算结果

关系运算符的运算结果为0或者1

  • 当条件成立时结果为 1,条件不成立结果则为 0。

  • 实例演示

#include <stdio.h>
int main() {
printf("11 > 2 结果为%d\n", 11 > 2);
printf("9 < 3 结果为%d\n", 9 < 3);
return 0;
}
  • 运行结果

2、运算符嵌套

  • 关系运算符是允许嵌套使用的,运算的结果可以继续作为关系运算符的一个参数

  • 同优先级的关系运算符结合律是从左往右的。

  • 实例演示
#include <stdio.h>
int main() {
printf("2 < 3 > 0 结果为 %d\n", 2 < 3 > 0);
printf("3 > 2 > 1 结果为 %d\n", 3 > 2 > 1);
return 0;
}
  • 运行结果

因为2 > 3的结果为1,所以2 > 3 > 0等价于1 > 0,输出的结果为:1

因为3 > 2的结果为1,所以3 > 2 > 1等价于1 > 1,输出的结果为:0

3、优先级

关系运算符的优先级比上篇文中中提到讲解的算术运算符优先级低,另外关系运算符之间也有优先级。

  • 高优先级: <、 <=、>、>=

  • 低优先级: ==、!=

  • 实例演示

#include <stdio.h>
int main() {
printf("2 < 3 == 1 结果为 %d\n", 2 < 3 == 1);
printf("1 == 3 > 1 结果为 %d\n", 1 == 3 > 1);
return 0;
}

在看运行结果前,我们先分析一下。

  • 假如 2 < 3先运算,结果为1,则2 < 3 == 1等效于1 == 1 , 输出的结果为1
  • 假如 3 == 1先运算,结果为0,则2 < 3 == 1等效于2 < 0 , 输出的结果为0

那么实际的运行结果如何呢?

我们接着分析

  • 因为 >的优先级大于==,所以先运算3 > 1,结果1,则1 == 3 > 1等效于1 == 1 , 输出的结果为 1

小结

通过本文的讲解,我们学会了6种运算符的使用方法及优先级关系,下一篇文章,我们将讲解逻辑运算符。

逍遥自在学C语言 | 关系运算符的更多相关文章

  1. C语言关系运算符

    在上节<C语言if else语句>中看到,if 的判断条件中使用了<=.>.!=等符号,它们专门用在判断条件中,让程序决定下一步的操作,称为关系运算符(Relational O ...

  2. 重学C语言---05运算符、表达式和语句

    一.循环简介 实例程序 /*shoes1.c--把一双鞋的尺码变为英寸*/#include <stdio.h>#define ADJUST 7.64#define SCALE 0.325 ...

  3. c语言基础表达式, 关系运算符, 逻辑运算符, 位运算符, 数据的取值范围, 分支结构(if...else, switch...case)

    1.表达式: 表达式的判断是有无结果(值), 最简单的表达式是一个常量或变量, 如:12, a, 3 + 1, a + b, a + 5 都是表达式 2.BOOL(布尔)数据类型: c语言中除了基本数 ...

  4. 【学习笔记】【C语言】关系运算符

    1. 条件判断 默认情况下,我们在程序中写的每一句正确代码都会被执行.但很多时候,我们想在某个条件成立的情况下才执行某一段代码 这种情况的话可以使用条件语句来完成,但是我们暂时不学习条件语句,先来看一 ...

  5. C语言基础学习运算符-关系运算符

    比较大小 首先,我们得先了解一下布尔类型.C语言的C99标准支持布尔类型,关键字为_Bool,用于表示逻辑值true与false.C语言用值1表示true, 用值0表示false.因此布尔类型实际上是 ...

  6. [Objective-C语言教程]关系运算符(8)

    运算符是一个符号,告诉编译器执行特定的数学或逻辑操作. Objective-C语言内置很多运算符,提供如下类型的运算符 - 算术运算符 关系运算符 逻辑运算符 按位运算符 分配运算符 其它运算符 本教 ...

  7. 《手把手教你学C语言》学习笔记(8)--- 运算符和表达式

    C语言编程的核心是指针和库,而库的核心就是函数,函数的基本组成部分就是语句. C语言合法表达式加上分号(语句结束符)构成C函数的基本部分语句.如果只有分号没有表达式就构成空语句,空语句常常用来形成占位 ...

  8. c语言中类型转换与赋值运算符、算术运算符、关系运算符、逻辑运算符。原码、反码、补码。小解。

    类型转换 自动转换 小范围的类型能够自动转换成大范围的类型.short->int->long->float->double 强制类型转换 (类型名)变量或数值 #include ...

  9. C语言运算符(关系运算符)+(逻辑运算符)

    下表显示了 C 语言支持的所有关系运算符.假设变量 A 的值为 10,变量 B 的值为 20,则: 实列: 1 #include <stdio.h> 2 3 int main() 4 { ...

  10. c语言学习笔记 if语句执行流程和关系运算符

    回想现实生活中,我们会遇到这样的情况,如果下雨了就带伞上班,如果没下雨就不带伞上班,这是很正常的逻辑.程序是解决生活中的问题的,那么自然在程序中也需要这样的判断,当满足某个条件的时候做一件事情,这种东 ...

随机推荐

  1. sourceCRT 开发vbs测试

    $language = "VBScript" $interface = "1.0" ' This automatically generated script ...

  2. homework2软件方法论

    什么是软件工程方法论? 1.软件工程是一个方法论,就是我们在开始一个项目时,大体框架一定要有这么一个概念,而具体实施时,必须根据公司一些特点,优化项目开发的流程,这样才是有实效而方法论只是软件工程的结 ...

  3. PTA1001 害死人不偿命的(3n+1)猜想 (15 分)

    1001 害死人不偿命的(3n+1)猜想 (15 分) 卡拉兹(Callatz)猜想: 对任何一个正整数 n,如果它是偶数,那么把它砍掉一半:如果它是奇数,那么把 (3n+1) 砍掉一半.这样一直反复 ...

  4. sat初学入门资料2022-12

    1. GlueMiniSatPPT-nabeshima.pdf A fast SAT solver with an aggressive acquiring strategy of glue clau ...

  5. mybatis-plus 3.4.3.1 设置数据库字段为NULL

    实体字段注解配置 @TableField(jdbcType = JdbcType.VARCHAR, updateStrategy = FieldStrategy.IGNORED) private St ...

  6. python3GUI--用Tk开发一款恶搞蓝屏软件(附源码)

    目录 一.准备工作 1.Tkinter 2.科普-电脑蓝屏 二.预览 1.蓝屏-win10.win11(中文版) 2.蓝屏-win10.win11(英文版) 3.Windows其他版本(XP.Win7 ...

  7. python——tips

    一:python分号使用 每一条语句最后个加个分号:这是c,oc,java,php等语言中不可缺少的部分,但是对于python,分号是可加,可不加的 如:不加分号代码 class Person: na ...

  8. Oracle11g 修改数据文件路径的方法

    Oracle 修改数据文件路径的方法   1. 关闭数据库,然后启动至mount状态 sqlplus / as sysdba shutdown immediate startup mount 2. 修 ...

  9. 量化交易 - matplotlib画candle图

    需要mplfinance包 pip install mplfinance --upgrade   from matplotlib import style import pandas as pd im ...

  10. Float浮动、 CSS定位(position)

    Float浮动. CSS定位(position)1.CSS定位机制(1)普通流(标准流)-默认状态,元素自动从左往右,从上往下的排列(2)浮动-会使元素向左或向右移动,只能左右,不能上下-浮动元素碰到 ...