当前位置: 首页 > news >正文

C++ 的 if 判断语句教程

一、基本语法

if 语句用于根据条件执行不同的代码块。其基本语法如下:

if (条件表达式) {
    // 条件为真时执行的代码
}
  • 条件表达式:返回布尔值(true 或 false)的表达式。
  • 代码块:用花括号 {} 包裹的一条或多条语句。

二、简单示例

#include <iostream>

int main() {
    int age = 18;
    if (age >= 18) {
        std::cout << "你已成年。" << std::endl;
    }
    return 0;
}

输出

你已成年。

三、if-else 结构

当需要在条件为真和假时分别执行不同操作时,使用 if-else

#include <iostream>

int main() {
    int num = 5;
    if (num > 0) {
        std::cout << "正数。" << std::endl;
    } else {
        std::cout << "非正数。" << std::endl;
    }
    return 0;
}

输出

正数。

四、多重条件判断(if-else if-else

#include <iostream>

int main() {
    int score = 85;
    if (score >= 90) {
        std::cout << "A" << std::endl;
    } else if (score >= 80) {
        std::cout << "B" << std::endl;
    } else if (score >= 70) {
        std::cout << "C" << std::endl;
    } else {
        std::cout << "D" << std::endl;
    }
    return 0;
}

输出

B

五、条件表达式中的运算符

  1. 比较运算符

    • == 等于
    • != 不等于
    • > 大于
    • < 小于
    • >= 大于等于
    • <= 小于等于
  2. 逻辑运算符

    • && 逻辑与(全真为真)
    • || 逻辑或(有真为真)
    • ! 逻辑非(取反)

示例

if (age >= 18 && score >= 60) {
    std::cout << "符合条件。" << std::endl;
}

六、嵌套 if 语句

在 if 块中嵌套另一个 if

#include <iostream>

int main() {
    int num = 10;
    if (num != 0) {
        if (num > 0) {
            std::cout << "正数。" << std::endl;
        } else {
            std::cout << "负数。" << std::endl;
        }
    } else {
        std::cout << "零。" << std::endl;
    }
    return 0;
}

输出

正数。

七、注意事项

  1. 省略花括号:若代码块只有一条语句,可省略花括号:

    if (x > 0)
        std::cout << "x 是正数。" << std::endl;
    
     

    但为了代码可读性,建议始终使用花括号。

  2. 避免赋值错误:条件表达式中误用 =(赋值)而非 ==(等于):

    if (x = 5) {  // 错误:实际是赋值,结果恒为真
        // 代码
    }
    

八、总结

  • if:单分支条件判断。
  • if-else:双分支条件判断。
  • if-else if-else:多分支条件判断。
  • 运算符:合理使用比较和逻辑运算符组合条件。
  • 嵌套:处理复杂逻辑时使用嵌套 if

通过 if 语句,可根据不同条件灵活控制程序流程。

相关文章:

  • 2025年AI网络安全攻防战:挑战深度解析与全链路防御体系构建指南
  • springboot项目Maven打包遇到的问题总结
  • C++ 二叉树代码
  • 机器分类的基石:逻辑回归Logistic Regression
  • React Portals深度解析:突破组件层级的渲染艺术
  • 计算机毕业设计SpringBoot+Vue.js景区民宿预约系统(源码+文档+PPT+讲解)
  • 原生AJAX和jQuery的Ajax区别
  • xss自动化扫描工具-DALFox
  • Linux:程序翻译
  • 常见报错及解决方案
  • 自然语言处理:文本表示
  • Android应用开发面试题
  • 深度解析Ant Design Pro 6开发实践
  • Flink怎么搞CDC?
  • 哈工大 计算机组成原理 第四章 存储器(上)笔记
  • vue3学习-1(基础)
  • Electron + Vite + React + TypeScript 跨平台开发实践指南
  • 代码随想录算法【Day61】
  • Python大数据处理实验报告(二)
  • 2.数据结构:3.合并集合
  • 高途一季度净利润同比增长1108%: “与吴彦祖一起学英语”短时间内就实现了盈利
  • 小雨伞保险经纪母公司手回集团通过港交所聆讯
  • 中国情怀:时代记录与家国镜相|澎湃·镜相第三届非虚构写作大赛征稿启事
  • “多规合一”改革7年成效如何?自然资源部总规划师亮成绩单
  • 新版城市规划体检评估解读:把城市安全韧性摆在更加突出位置
  • 王伟妻子人民日报撰文:81192,一架永不停航的战机