逍遥自在学C语言 | 关系运算符

前言

逍遥自在学C语言 | 关系运算符

一、人物简介

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

逍遥自在学C语言 | 关系运算符

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

逍遥自在学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;
}
  • 运行结果

逍遥自在学C语言 | 关系运算符

2、运算符嵌套

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

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

逍遥自在学C语言 | 关系运算符

  • 实例演示
#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;
}
  • 运行结果

逍遥自在学C语言 | 关系运算符

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

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

逍遥自在学C语言 | 关系运算符

逍遥自在学C语言 | 关系运算符

我们接着分析

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

小结

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

原文链接:https://www.cnblogs.com/Wayne123/p/17289140.html

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:逍遥自在学C语言 | 关系运算符 - Python技术站

(0)
上一篇 2023年4月17日
下一篇 2023年4月17日

相关文章

  • vbscript,jscript脚本编程教学(1)

    VBScript和JScript脚本编程教学(1) 介绍 VBScript和JScript是微软公司开发的脚本语言,它们的语法和使用方法与JavaScript非常相似。VBScript一般被用于ASP.NET网站的开发,而JScript则一般被用于Windows脚本和Windows PowerShell等环境中。 本教程将重点讲解VBScript和JScri…

    C 2023年5月23日
    00
  • 深入理解C++中的new和delete并实现对象池

    深入理解C++中的new和delete并实现对象池 1. C++中的new和delete 1.1 new操作符 new操作符是C++中用于动态分配内存的关键字,它可以在堆上分配空间,并返回指向新分配空间的指针。new操作符有多种语法,其中最常用的是: Type *pointer = new Type; 其中Type表示要分配的类型,pointer是指向新分配…

    C 2023年5月22日
    00
  • C++11/14 线程的创建与分离的实现

    下面就详细讲解C++11/14线程的创建与分离的实现的攻略。 线程的创建 使用C++11/14标准提供的std::thread库可以创建线程。线程的创建可以通过以下操作: 定义一个线程对象,并指定线程函数 c++std::thread my_thread(my_func); 这里的my_func是一个函数指针,指向线程所要执行的函数。 定义一个匿名线程对象,…

    C 2023年5月22日
    00
  • PHP使用JSON和将json还原成数组

    关于PHP使用JSON和将JSON还原成数组的攻略,可以分为以下几个步骤: 1. PHP使用JSON 1.1 创建JSON字符串 在PHP中使用json_encode()函数可以将数组转换为JSON格式的字符串。例如: $array = array( ‘name’ => ‘Tom’, ‘age’ => 25, ‘sex’ => ‘male’…

    C 2023年5月23日
    00
  • C语言的10大基础算法

    C语言的10大基础算法 简介 C语言是一门非常古老并且非常流行的编程语言。C语言强大的功能和丰富的软件库致使它成为了许多程序员和企业的首选开发语言。不仅如此,C语言中还有一些非常重要而基础的算法,这些算法也是程序员必须掌握的一部分。这篇文章将介绍C语言中的10个最基础的算法。 算法介绍 1. 排序算法 排序算法是所有程序员必须掌握的一部分,因为数据处理与排序…

    C 2023年5月23日
    00
  • 关于C#版Nebula客户端编译的问题

    关于C#版Nebula客户端编译的问题,我将提供一份详细攻略,让您能对C#版Nebula客户端的编译过程有更深入的理解。 前置要求 在开始编译C#版Nebula客户端之前,我们需要先安装相关的开发工具和依赖库。 Visual Studio – 用于开发和编译C#项目的集成开发环境。 Git – 用于从Github上获取Nebula客户端的源代码。 .NET框…

    C 2023年5月23日
    00
  • VS2019开发Linux C++程序的实现步骤

    实现步骤: 安装Visual Studio 2019(注意:需要安装Linux工作负载) 在VS中安装Linux C++开发组件 在VS中创建一个新的Linux C++ 项目(例如console应用程序项目) 配置Linux环境,包括SSH连接、CMake、交叉编译器等。可以参考官方文档和其他教程进行配置。 编写C++代码并进行调试。在VS中按F5可启动调试…

    C 2023年5月23日
    00
  • 如何在c++中实现字符串分割函数split详解

    如何在C++中实现字符串分割函数split详解 简介 字符串分割是比较常见的字符串处理方式之一,常用于将一个字符串按照特定的分隔符分割成若干个子串。在C++中,实现字符串分割可以通过一些STL容器和标准库函数来完成。 实现 方法一:使用stringstream stringstream是C++ STL库中用来进行字符串流处理的一个类。使用这个类可以将一个字符…

    C 2023年5月23日
    00
合作推广
合作推广
分享本页
返回顶部