C语言例3-19:逻辑运算的例子

逻辑运算符的优先级:

  1. ! 优先于  双目运算符  优先于  关系运算符  优先于  &&  优先于  ||
  2. 单目逻辑运算符!    和单目算术运算符   的优先级相同,结合性均是从右至左
  3. 双目逻辑运算符“&&”和“||”的结合性是从左至右

注意:

  1. 对于运算结果:1(逻辑真)0(逻辑假)
  2. 对于运算对象:非0(逻辑真)0(逻辑假)
  3. 逻辑与“&&”相当于“同时”;逻辑或“||”相当于“或者”;逻辑非“!”相当于“否定”
  4. 运算对象可以是任何类型的数据
  5. 一旦“&&”和“||”能够确定表达式的值,则不再继续运算。逻辑与“&&”第一个表达式为“假”,则运算结果为“假”,不再继续运算。逻辑或“||”第一个表达式为“真”,则运算结果为“真”,不再继续运算。

逻辑表达式的构成规则:

        单目逻辑运算符  表达式

        表达式  双目逻辑运算符  表达式

1,判判断年份是否为闰年的逻辑表达式。

代码如下:

//从键盘输入年份,判断是否为闰年
#include<stdio.h>
int main(void)                                     
{
	int year, result;                            
	printf("请输入年份: \n");            
	scanf("%d",&year);                //从键盘输入年份并保存到变量year
	result = (year%4==0)&&(year%100!=0)||(year%400==0);  
        //判断是否为闰年并保存到变量result
	if(result==1)
		printf("%d 年是闰年\n",year);          
	else
		printf("%d 年不是闰年\n",year);
	return 0;
	
}

结果如下:

2,简单例子

代码如下:

#include<stdio.h>
int main(void)
{
	int a=1, b=2, c=3, d=4, m=1,n=1;
	
	printf("(m=a>b)&&(n=c>d)的值为:  %d\n",(m=a>b)&&(n=c>d));       
		//(m=0)&&(n=c>d)  -->  0&&(n=c>d)     -->0
	printf("m 的值为: %d\n",m);      //0
	printf("n 的值为: %d\n",n);      //1
	
	return 0;
}

结果如下:

  • 9
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值