首页 > 其他分享 >C语言中的关系操作符

C语言中的关系操作符

时间:2023-07-26 23:14:30浏览次数:32  
标签:关系 变量 C语言 运算符 报错 操作符 表达式

C语言中的关系操作符

C语言用于比较的表达式,称为关系表达式(relational expression),里面使用的运算符就称为"关系运算符"(relational operator),主要有下面6个。

  • >大于运算符
  • >=大于等于运算符
  • <小于运算符
  • <=小于等于运算符
  • ==相等运算符
  • !=不相等运算符

下面是一些例子。

a == b;
a != b;
a < b;
a > b;
a >= b;
a <= b;

关系表达式通常返回01,表示真假。

C语言中,0表示假,所有非零值表示真。比如,20 > 12返回120 > 20返回0

关系表达式常用于ifwhile结构。

if (x == 3){
    printf("x is 3.\n");
}

注意:相等运算符==与赋值运算符=是两个不一样的运算符,不要混淆。有时候不小心些出下面的代码,它可以运行,但很容易出现意料之外的结果。

if(x = 3)...

上面示例中, 原意是x == 3,但是不小心写成x = 3。这个式子表示对变量x赋值3,它返回值为3,所以if判断总为真。
为了防止出现这种错误,有的程序员喜欢讲变量写在等号的右边。

if(3 == x)...

这样的话,如果把==误写成=,编译器就会报错。

/* 报错 */
if(3 = x)...

另一个需要避免的错误是:多个关系运算符不宜连用。

i < j < k

上面实例中,连续使用两个小于运算符。这是合法表达式,不会报错,但是通常达不到想要的结果,即不是保证变量j的值在ik之间。因为关系运算符是从左到右计算,所以实际执行的是下面的表达式。

(i < j) < k

上面式子中,i < j返回01,所以最终是01与变量k进行比较。如果想要判断变量j的值是否在ik之间,应该使用下面的写法。

i < j && j < k

比如:我们输入一个年龄,如果年龄在18岁~36岁之间,我们输出青年。

#include <stdio.h>

int main()
{
    int age = 0;
    scanf("%d", &age);
    if(18<=age && age <= 36)
    {
        printf("青年\n");
    }
    return 0;
}

标签:关系,变量,C语言,运算符,报错,操作符,表达式
From: https://www.cnblogs.com/bjx2020/p/17583748.html

相关文章

  • C语言中的逻辑操作符
    C语言中的逻辑操作符逻辑操作符提供逻辑判断功能,用于构建更复杂的表达式,主要有下面三个运算符。!:逻辑取反运算符(改变单个表达式的真假)。&&:与运算符,就是并且的意思(两侧的表达式都为真,则为真,否则为假)。||:或运算符,就是或者的意思(两侧至少有一个表达式为真,则为真,否则为假)。注:C......
  • C语言基础
    主函数1.1main函数main函数参数一共有三个:1.intargc整型变量2.char*argv[]字符指针的数组,通俗一点就是字符串数组,每个元素都是字符串3.char*envp[]字符串数组intmain(void)//无参数形式{return0;}intmain(intargc,char*argv[])//带形式参数{return0;}C语言程......
  • TAC码和IMEI的关系
    TAC码和IMEI的关系 一、TAC是什么?TAC是型号分配码,也是IMEI(国际移动设备识别码)的号头。TAC可识别设备型号、商标所有者和生产厂商TAC核发给商标所有者的特定型号产品使用一个TAC仅分配给一个产品型号使用每一款产品型号都应申请新的TACTAC是IMEI的前八位一个TAC可生成10......
  • c语言学习9
    一、字符串字符:人能看得懂的符号或图案,在内存中以整数形式存储,根据ASCII码表中的对应关系显示出相应的符号或图案'\0'0空字符'0'48'A'65'a'97串:是一种数据结构,存储类型相同的若干个数据对于串型结构的处理是批量性的,会从头开始直到遇到结束标志......
  • 基于C语言的P2P软件实现
    完整资料进入【数字空间】查看——搜索"writebug"摘要Peer-to-Peer网络毫无疑问是当今的热点技术主题。Napster和Gnutella的广泛使用证明了peer-to-peer应用的强大潜力。P2P(或者说peer-to-peer)网络是一种基于操作上下文的网络模型,任何一个节点都同时作为客户机和服务器。J......
  • Bios与EC的关系
    BIOS(基本输入输出系统)在整个系统中的地位是非常重要的,它实现=了底层硬件和上层操作系统的桥梁。比如你现在从光盘拷贝一个文件到硬盘,您只需知道“复制、粘贴”的指令就行了,您不必知道它具体是如何从光盘读取,然后如何写入硬盘。对于操作系统来说也只需要向BIOS发出指令即可,而不必知......
  • 5分钟迁移关系型数据库到图数据库
    本文分享自华为云社区《5分钟迁移关系型数据库到图数据库》,作者:RiverSide。以往开发者会使用关系型数据库如MySQL对领域数据进行存储,这类关系型数据库诞生较早,但并不适合存储关联度较大的数据,如社交关系网络。随着高关联度数据的存储及分析的需求随数据量日益增长,将海量关联数据......
  • 【随手记录】关于关系型数据库索引的建立
    1、索引不是万能的,每类索引都有对应使用情况2、索引不是越多越好,建立索引对应需要维护索引数据3、对于like进行模糊搜索时,并不是所有的情况都走索引,需要根据具体的写法来判断4、where语句最好不要出现in!=等操作符5、对于大量重复的数据查询索引可能不生效6、尽量避免在where条......
  • day10 10.1 C语言基础之编译器安装
    【一】学习C语言的原因一般公司的apk基于Java实现的加密jadx反编译java,分析代码NB公司的的apk,基于Java+C语言实现加密(JNI开发)加密一般使用C语言开发,在安卓项目中使用Java调用C语言开发的动态链接库文件jadx反编译java,分析代码看不到加密ida反编译c语言,分析代码......
  • C语言之函数
    函数一个c语言项目只能有一个main函数函数是什么?函数是一段可重复使用的代码块,用于执行特定的任务。它接受输入参数,执行一系列操作,并返回一个值。在C语言中,函数由函数头和函数体组成。函数头包含函数的返回类型、函数名和参数列表。函数体包含函数的具体实现代码。通过调......