目录

  1. 判断概述
  2. if 语句
  3. if-else 语句
  4. else-if 语句
  5. switch 语句
  6. 条件表达式(?:
  7. 参考资料

1. 判断概述

在 C++ 中,判断语句(Conditional Statements)用于根据条件的真假来决定程序的执行流程。C++ 提供了多种判断语句,常见的包括 ifif-elseelse-ifswitch。这些判断语句使得程序能够根据不同的条件执行不同的操作。


2. if 语句

if 语句是 C++ 中最基本的条件判断语句,它根据给定的条件判断是否执行某段代码。其基本语法如下:

if (条件表达式) {
    // 条件为 true 时执行的代码
}

  • 条件表达式:如果该条件为 true,则执行 if 语句块中的代码,否则跳过。

示例

#include <iostream>
using namespace std;

int main() {
    int a = 10;
    if (a > 5) {
        cout << "a 大于 5" << endl;
    }
    return 0;
}

输出:

a 大于 5


3. if-else 语句

if-else 语句允许在条件为 false 时执行另一段代码。其基本语法如下:

if (条件表达式) {
    // 条件为 true 时执行的代码
} else {
    // 条件为 false 时执行的代码
}

  • 条件表达式:如果为 true,执行 if 语句块;如果为 false,执行 else 语句块。

示例

#include <iostream>
using namespace std;

int main() {
    int a = 3;
    if (a > 5) {
        cout << "a 大于 5" << endl;
    } else {
        cout << "a 小于等于 5" << endl;
    }
    return 0;
}

输出:

a 小于等于 5


4. else-if 语句

else-if 语句用于在多个条件之间选择,并且每个条件都可以有不同的判断。当多个条件需要逐一判断时使用 else-if。其基本语法如下:

if (条件1) {
    // 条件1为 true 时执行的代码
} else if (条件2) {
    // 条件2为 true 时执行的代码
} else {
    // 所有条件均为 false 时执行的代码
}

  • else-if 语句块可以有多个,每个 else-if 后都可以有不同的条件判断。
  • 如果一个条件成立,程序会跳过其他的 else-ifelse 语句。

示例

#include <iostream>
using namespace std;

int main() {
    int a = 10;
    if (a > 15) {
        cout << "a 大于 15" << endl;
    } else if (a > 5) {
        cout << "a 大于 5 且小于等于 15" << endl;
    } else {
        cout << "a 小于等于 5" << endl;
    }
    return 0;
}

输出:

a 大于 5 且小于等于 15


5. switch 语句

switch 语句用于根据变量的不同值选择执行不同的代码块。它通常用于当有多个选项需要判断时,比多个 if-else 语句更加简洁高效。其基本语法如下:

switch (表达式) {
    case 常量1:
        // 表达式与常量1匹配时执行的代码
        break;
    case 常量2:
        // 表达式与常量2匹配时执行的代码
        break;
    default:
        // 所有常量都不匹配时执行的代码
}

  • 表达式:通常是一个整数、字符、枚举类型的值。
  • case 常量:当表达式与某个常量匹配时,执行相应的代码。
  • break:跳出 switch 语句,防止继续执行后续的 case
  • default:当没有任何 case 与表达式匹配时,执行 default 中的代码(可选)。

示例

#include <iostream>
using namespace std;

int main() {
    int a = 2;
    switch (a) {
        case 1:
            cout << "a 等于 1" << endl;
            break;
        case 2:
            cout << "a 等于 2" << endl;
            break;
        case 3:
            cout << "a 等于 3" << endl;
            break;
        default:
            cout << "a 的值未知" << endl;
            break;
    }
    return 0;
}

输出:

a 等于 2


6. 条件表达式(?:

条件表达式(也叫三元运算符)是一个简洁的 if-else 语句,它有如下语法:

条件表达式 ? 表达式1 : 表达式2;

  • 如果条件表达式为 true,返回表达式1的值;如果为 false,返回表达式2的值。

示例

#include <iostream>
using namespace std;

int main() {
    int a = 10;
    string result = (a > 5) ? "a 大于 5" : "a 小于等于 5";
    cout << result << endl;
    return 0;
}

输出:

a 大于 5


7. 参考资料


总结

C++ 的判断语句是用于根据条件判断执行不同代码的工具。通过 ifif-elseelse-ifswitch,可以灵活地控制程序流。条件表达式(?:)提供了一种简洁的判断方式。熟练掌握这些判断语句,能够帮助开发者编写更加简洁和高效的代码。