【语法3】条件判断语句

~ 2025-8-13 15:30:43

条件判断语句

if 语句

条件判断语句关键字

  • if :如果

  • else :否则

比较(关系)运算符

  • > :大于

  • < :小于

  • == :等于

  • != :不等于

  • <= :小于等于

  • >= :大于等于

逻辑运算符

首选记号

&&  //  并且(与)
||  //  或者(或)
!   //  不是(非)

代用记号

and //  &&
or  //  ||
not //  !

条件判断语法(选择语句)

if (条件表达式)
{
    条件成立时执行
}
if (条件表达式)
{
    条件成立时执行
}
else
{
    条件不成立时执行
}

嵌套情况:

if ( 条件1表达式 )
{
    条件1成立时执行
}
else if ( 条件2表达式 )
{
    条件2成立时执行
}
else
{
    条件均不成立时执行
}

布尔逻辑体系

布尔变量占1个字节,可以保存-128~127的数字

当且仅当布尔变量等于0时,逻辑表达为假,其他数字均表达为真

bool bo1 = 2 > 1; //用逻辑表达式给布尔变量赋值,以下两个语句是等价的
if (bo1)
{
}
if (2 > 1)
{
}

bool bo2 = 0; //用具体数值给布尔变量赋值,赋予0时为假,其他数值时为真
if (bo2)
{
	//此例子这里不会执行
} 
else 
{
    //此例子会执行这里的表达式
}

当布尔变量为真时直接cout会输出1,为假时会输出0

bool bo = 1 > 2;
cout << bo << "\n"; 
bo = 2 > 1;
cout << bo << "\n"; 
bo = 123;
cout << bo << "\n";

上面代码的输出为:

0

1

1

逻辑运算符

A B A and B A or B not A
True True True True False
True False False True False
False True False True True
False False False False True

其他常见基础操作

闰年判断

  • 普通闰年:y % 4 == 0 && y % 100 != 0
  • 世纪闰年:y % 400 == 0
  • 闰年判断:(y % 4 == 0 && y % 100 != 0) || y % 400 == 0
    • 因为 && 优先级高于 ||,所以不写那个小括号也可以。

三角形判断

任意两边之和大于第三边。

a + b > c && a + c > b && b + c > a

上下取整

int p, q, x;,这里我们只讨论 p,q>0 的情况。

  • 下取整(x = pq\lfloor \frac{p}{q} \rfloor
    • x = p / q
  • 上取整(pq\lceil \frac{p}{q} \rceil
    • if (p % q == 0) 
          x = p / q; 
      else 
          x = p / q + 1;
      
    • x = (p + (q - 1)) / q;
    • x = p / q + (p % q != 0);

类型转换

  • 用一个目标类型的数参与运算(必须是更优先的类型):
    • 1.0 * a
    • 1LL * a(默认情况下 1int 类型,在后面加上 llLL 可以得到一个 long long 类型的 1
  • 存入一个目标类型的变量:
    • char c = 'a' - 32;
  • (type) 前缀,这个前缀会把紧跟着的数变为 type 类型。
    • (double)p / q
    • (char)('a' - 32)


我们会审查剪贴板内容,并对发布不合适内容的同学进行相应的处理