首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

3.4 C++逻辑运算和逻辑表达式

C++逻辑常量和变量

C++的逻辑常量只有两个:false和true,逻辑型变量的定义是用bool,bool类型的值只能是true或者false

代码语言:javascript
复制
bool x,y;
x=true;
y=false;

读者需要知道的一点,在编译系统处理逻辑型数据时,将true处理为1,将false处理为0。

C++的逻辑运算符

代码语言:javascript
复制
&& //逻辑与 
|| //逻辑或
!//逻辑非

在C++的逻辑表达式中,如果这个逻辑表达式有多个逻辑运算符,则优先级会按照逻辑非->逻辑与->逻辑或,其中逻辑非优先级最高。

逻辑运算符中的&&和||优先级低于关系运算符,逻辑非!高于算术运算符。

代码语言:javascript
复制
//例如
(x>y)&&(m>n); //等效于x>y&&m>n
(x==y)||(m=n); //等效于x==y||m==n
(!x)||(m>n); //等效于!x||m>n

C++的逻辑表达式就是用逻辑运算符将两个关系表达式连接起来,逻辑表达式的一般形式为:表达式 逻辑运算符 表达式。

逻辑表达式的值是一个逻辑量真(1)或假(0),如果其值是0认为是假,如果其值非0认为是真。

在C++中,整型数据可以出现在逻辑表达式中,根据整型数据的值0或者非0,把它作为逻辑量假或真,然后参与逻辑运算。

案例:键盘输入一个整数,判别它是否为闰年。

代码语言:javascript
复制
#include<iostream> //头文件
using namespace std;
int main()       //主函数 
{
  int year; //定义变量 
  cin>>year; //输入函数 
  if((year%4==0&&year%100!=0)||year% 400== 0) //判断条件 
  {
    cout<<year<<"是闰年"<<endl; 
  }
  else
  {
    cout<<year<<"不是闰年"<<endl; 
  }
  return 0; 
}

执行本程序之后

输入2000,会输出2000是闰年

输入2001,会输出2001不是闰年

下一篇
举报
领券