5

逍遥自在学C语言 | 关系运算符 - 知微之见

 1 year ago
source link: https://www.cnblogs.com/Wayne123/p/17289140.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
1511464-20230405122251445-87759805.png

一、人物简介

  • 第一位闪亮登场,有请今后会一直教我们C语言的老师 —— 自在。
1511464-20230403100945222-934948634.gif
  • 第二位上场的是和我们一起学习的小白程序猿 —— 逍遥。
1511464-20230403101030223-1500558355.gif

二、构成和表示方式

  • 关系运算符的作用是判断符号两边大小的关系
  • 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;
}
1511464-20230405122310266-1598933164.png

2、运算符嵌套

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

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

1511464-20230405122320782-589827124.png
#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;
}
1511464-20230405122332300-11782653.png

📙 因为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

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

1511464-20230405122349379-274073676.png
1511464-20230405122357149-1845083670.png

我们接着分析

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

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


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK