c语言学习之基础知识点介绍(五):关系运算式和逻辑运算式

本文详细介绍了C语言中的关系运算符和逻辑运算符的使用方法,并通过实例演示了如何运用这些运算符进行条件判断。此外,还讲解了sizeof运算符的作用及计算规则。

本节主要说关系运算式和逻辑运算式。 

一、关系运算式

1、等于(==):判断左边的表达式是否等于右边的表达式

2、大于(>):判断左边的表达式是否大于右边的表达式

3、大于等于(>=):判断左边的表达式是否大于等于右边的表达式

4、小于(<):判断左边的表达式是否小于右边的表达式

5、小于等于(<=):判断左边的表达式是否小于等于右边的表达式

6、不等于(!=):判断左边的表达式是否不等于右边的表达式

 

//注意:c语言中,关系运算所得结果只有0和1,0代表false(假),1代表true(真)。
int num1 = 4;
int num2 = 7;
int result = 0;//默认为0

//等于(==):
result = num1 == num2;
printf("result = %d \n",result);//输出0

//大于(>):
result = num1 > num2;
printf("result = %d \n",result);//输出0

//大于等于(>=):
result = num1 >= num2;
printf("result = %d \n",result);//输出0

//小于(<):
result = num1  < num2;
printf("result = %d \n",result);//输出1

//小于等于(<=):
result = num1 <= num2;
printf("result = %d \n",result);//输出1

/不等于(!=):
result = num1 != num2;
printf("result = %d \n",result);//输出1

 

 

二、逻辑运算符

//逻辑运算式的结果也只有0和1,0代表false(假),1代表true(真)
//注意:c语言中任何非0数字都为真。
int num1= 6;
int num2= 7;
int result = 0;
//1、&&:逻辑与,
result = num1>num2&&num1<num2;
printf("result = %d \n",result);
//输出0,因为有一个是0,所以整个表达式的结果就是0。一假则假

//2、||:逻辑或,
result = num1>num2 || num1<num2;
printf("result = %d \n",result);
//输出1,因为有一个是1,所以整个表达式的结果就是1。一真就真

//3、!:逻辑非,
result = !(num1>num2);
printf("result = %d \n",result);
//输出1,因为是取反,真变假,假变真。

//断路的问题
result = ++num1 || num2++;
printf("num1= %d num2 = %d result= %d",num1,num2,result);
//输出 7,7,1,因为任何非0 的数字都是真,所以当程序执行到++num1的时候就为真,后面的num2++不会执行。

int num 1= -1;int num2 =20;
result = num1++ || num2++;
printf("num1= %d num2 = %d result= %d",num1,num2,result);
//输出 0,20,1,后缀++会先用原先的值进行判断,-1为真,所以就是真,后面的值不会执行。如果是前缀++结果就是0,21,1

//逻辑与(&&)的运算可以自己去试试,但是得注意的是,如果&&前面的表达式为假,后面的就不会执行。只有当前面的为真,才会执行后面的表达式。

//总结:因为&&是一假则假,所以右边的表达式不会执行,||是一真则真,所有右边的表达式不会执行。

//逻辑运算符的优先级
//逻辑运算符<关系运算符<算术运算符

 三、sizeof运算符

注意:sizeof并不是函数 只是运算符(计算出的结果是unsigned long 类型的数值)。

作用:计算出类型所占用的字节数。

//sizeof运算符
int result = sizeof(int);//发生了隐式转换
printf("result = %d",result);//输出4
printf("result = %lu",sizeof(int));//输出4

//自动的类型转换:只有基本数据类型才有,整型、实型、字符型。

//如果传入的是char类型的常量,计算结果也是4字节,传入char类型的变量或者char类型,那么计算结果是1。因为char类型的常量在内存中是当做int类型来存的。

 

至此运算符还有最后一个换位运算符没有介绍,后续有空会补上,有兴趣的也可以自己去学下。

 

 

 

 

转载于:https://www.cnblogs.com/bobo-pcb/p/4902291.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值