目录

前言

一、C++语句

二、顺序结构

1.声明语句

2.表达式语句

3.基本输入/输出语句

4.复合语句和空语句

三、选择结构

1.if语句

2.switch语句

四、循环结构

1.for语句 

2.while语句 

3.do...while语句

4.循环的嵌套   

五、跳转语句        


前言

    这篇文章介绍一下C++中的基本控制语句

一、C++语句

        在C++中,语句是构成程序的基本单位,用于执行特定的操作。

二、顺序结构

1.声明语句

        声明语句:声明语句用于声明变量、函数、类等标识符。

2.表达式语句

        表达式语句执行一个表达式,并且以分号结尾。

3.基本输入/输出语句

        输出语句:使用 cout 对象可以将数据输出到标准输出流(通常是显示器)上

        输入语句:使用 cin 对象可以从标准输入流(通常是键盘)读取数据。

4.复合语句和空语句

        空语句:空语句不执行任何操作,只包含一个分号。通常用于语法要求的位置或者占位符

        复合语句(也称为块语句)是一组语句的序列,它们被包裹在花括号 {} 中,并被视为一个独立的语句单元。在 C++ 中,复合语句允许将多个语句组合在一起,并在需要单个语句的地方使用。

        

#include <iostream>
using namespace std;

int main() {
    int x = 5;

    {
        int y = 10;
        cout << "Inside inner block: x = " << x << ", y = " << y << endl;
    } // y的作用域在这里结束

    // y在这里不可见
    cout << "Outside inner block: x = " << x << endl;

    return 0;
}

三、选择结构

1.if语句

        C++ 中最基本和常用的控制流语句之一,用于根据条件选择执行不同的代码块。if 语句的基本语法如下:

        如果 condition 的值为真(非零),则执行 if 语句后面的代码块;如果 condition 的值为假(零),则跳过 if 语句后面的代码块,继续执行程序的下一条语句。

if 语句还可以与 else 配合使用,形成 if-else 结构,用于在条件为假时执行另一段代码块。if-else 语句的语法如下:

下面是一个示例,演示了 ifif-else 语句的用法:

#include <iostream>
using namespace std;

int main() {
    int x = 10;

    // 简单的if语句
    if (x > 5) {
        cout << "x is greater than 5" << endl;
    }

    // 带有else的if语句
    if (x > 20) {
        cout << "x is greater than 20" << endl;
    } else {
        cout << "x is not greater than 20" << endl;
    }

    // 嵌套的if语句
    if (x > 5) {
        if (x < 15) {
            cout << "x is between 5 and 15" << endl;
        }
    }

    return 0;
}

2.switch语句

        switch语句是 C++ 中另一种常用控制流语句,用于根据表达式的值选择不同的执行路径。        

        switch语句的基本语法如下:

        switch语句首先计算表达式的值,然后将这个值与 case 标签中的值进行比较。如果找到一个匹配的 case 标签,则执行相应的代码块,并跳过后面的 case标签;如果没有找到匹配的 case 标签,则执行default标签后面的代码块(如果有),或者直接跳过 switch语句。

        注意:
        - 每个 case 标签后面都必须有一个 break语句,用于终止 switch语句的执行,否则将会继续执行下一个 case 标签后面的代码块。
        - default标签是可选的,用于处理表达式的值与所有 case值都不匹配的情况。

下面是一个示例,演示了 `switch` 语句的用法:

#include <iostream>
using namespace std;

int main() {
    int choice;

    cout << "Enter a number between 1 and 3: ";
    cin >> choice;

    switch (choice) {
        case 1:
            cout << "You chose option 1" << endl;
            break;
        case 2:
            cout << "You chose option 2" << endl;
            break;
        case 3:
            cout << "You chose option 3" << endl;
            break;
        default:
            cout << "Invalid choice" << endl;
            break;
    }

    return 0;
}

        在这个示例中,用户输入一个数字,然后根据这个数字执行相应的操作。根据用户的输入,switch语句会选择不同的执行路径。

四、循环结构

1.for语句 

        for循环是 C++ 中常用的一种循环结构,用于重复执行一段代码,直到条件不再足。

        for循环的基本语法如下:

        其中:

        initialization 是循环开始前的初始化语句,通常用于初始化循环控制变量。
        condition 是循环继续执行的条件,每次循环迭代之前都会进行检查。如果条件为真,则继续执行循环;如果条件为假,则结束循环。
        update是循环迭代后更新循环控制变量的语句,通常用于增加或减少循环控制变量的值。

        for 循环可以替代 while 循环,它的结构更加简洁明了,适合于循环次数已知的情况。

        下面是一个示例,演示了 for循环的用法:

#include <iostream>
using namespace std;

int main() {
    // 打印数字1到5
    for (int i = 1; i <= 5; ++i) {
        cout << i << " ";
    }
    cout << endl;

    // 计算数字1到5的和
    int sum = 0;
    for (int j = 1; j <= 5; ++j) {
        sum += j;
    }
    cout << "Sum of numbers 1 to 5: " << sum << endl;

    return 0;
}

        在这个示例中,我们使用 for循环打印了数字1到5,以及计算了数字1到5的和。在 for循环的括号中,我们分别进行了循环变量的初始化、条件的检查和循环变量的更新。

2.while语句 

       while 循环是 C++ 中另一种常用的循环结构,它用于重复执行一段代码,直到指定的条件不再满足。while循环的基本语法如下:

其中 condition是循环继续执行的条件。在每次循环迭代开始时,会检查 condition的值。如果 condition 为真,则执行循环体内的代码块;如果 condition为假,则结束循环,程序继续执行循环后面的代码。

while循环常用于循环次数不确定的情况,只要条件为真,循环就会继续执行。

下面是一个示例,演示了 `while` 循环的用法:

#include <iostream>
using namespace std;

int main() {
    int num = 1;

    // 打印数字1到5
    while (num <= 5) {
        cout << num << " ";
        ++num;
    }
    cout << endl;

    // 计算数字1到5的和
    num = 1;
    int sum = 0;
    while (num <= 5) {
        sum += num;
        ++num;
    }
    cout << "Sum of numbers 1 to 5: " << sum << endl;

    return 0;
}

        在这个示例中,我们使用 while 循环打印了数字1到5,以及计算了数字1到5的和。在 `while` 循环的括号中,我们指定了条件 num <= 5,并在循环体内对循环控制变量 num进行递增操作。

3.do...while语句

        do...while 循环是 C++ 中另一种循环结构,它和 while循环类似,但在执行循环体之前会先执行一次条件检查。这意味着无论条件是否为真,循环体至少会执行一次。

        do...while 循环的基本语法如下:

其中 condition 是循环继续执行的条件。在每次循环迭代开始时,会先执行循环体内的代码块,然后再检查 condition 的值。如果 condition 为真,则继续执行循环;如果 condition为假,则结束循环,程序继续执行循环后面的代码。

do...while 循环适用于需要至少执行一次循环体的情况。

下面是一个示例,演示了 do...while循环的用法:

#include <iostream>
using namespace std;

int main() {
    int num = 1;

    // 打印数字1到5
    do {
        cout << num << " ";
        ++num;
    } while (num <= 5);
    cout << endl;

    // 计算数字1到5的和
    num = 1;
    int sum = 0;
    do {
        sum += num;
        ++num;
    } while (num <= 5);
    cout << "Sum of numbers 1 to 5: " << sum << endl;

    return 0;
}

        在这个示例中,我们使用 do...while 循环打印了数字1到5,以及计算了数字1到5的和。无论条件 num <= 5是否为真,循环体至少会执行一次。

4.循环的嵌套   

        循环的嵌套是指在一个循环内部包含另一个循环。C++ 允许在任何循环体内部嵌套其他类型的循环,包括 for 循环、while 循环、do...while 循环等。通过循环的嵌套,可以实现更复杂的控制流程和算法逻辑。

下面是一个简单的示例,演示了循环的嵌套:

#include <iostream>
using namespace std;

int main() {
    // 外层循环控制行数
    for (int i = 1; i <= 5; ++i) {
        // 内层循环控制每行打印的星号数量
        for (int j = 1; j <= i; ++j) {
            cout << "* ";
        }
        cout << endl;
    }

    return 0;
}

        在这个示例中,外层循环控制行数,内层循环控制每行打印的星号数量。通过循环的嵌套,我们实现了一个打印直角三角形的功能。

        循环的嵌套可以嵌套多层,可以结合条件判断语句,实现更复杂的控制逻辑。然而,过度的循环嵌套可能会导致代码可读性下降和性能问题,因此需要谨慎使用。        

五、跳转语句        

        跳转语句是 C++ 中的一种特殊语句,用于改变程序的执行流程,通常用于控制程序的跳转和循环中的终止。

        以下是几种常见的跳转语句:

        1. break 语句:在循环语句 (for, while, do...while) 或 switch 语句中,break语句用于终止当前循环或 switch语句的执行,并跳出循环或 switch语句的代码块。

    for (int i = 0; i < 10; ++i) {
        if (i == 5) {
            break; // 当 i 等于 5 时跳出循环
        }
        cout << i << endl;
    }

        2. continue 语句:在循环语句 (for, while, do...while) 中,continue 语句用于跳过当前迭代的剩余部分,直接进入下一次循环迭代。

    for (int i = 0; i < 10; ++i) {
        if (i % 2 == 0) {
            continue; // 当 i 为偶数时跳过本次循环
        }
        cout << i << endl;
    }

        3. return 语句:在函数中,return语句用于返回函数的执行结果,并结束函数的执行。

    int square(int x) {
        return x * x; // 返回 x 的平方
    }

        4. goto 语句:goto语句是 C++ 中最基本的跳转语句,它可以直接跳转到指定标签(标签必须在当前作用域内)的语句处执行。

    int x = 0;
    loop:
    cout << x << endl;
    ++x;
    if (x < 10) {
        goto loop; // 跳转到 loop 标签处继续执行
    }

        尽管 `goto` 语句在一些特定情况下可能会提供一种解决问题的途径,但通常不推荐使用,因为它会使程序的流程变得难以理解和维护。相比之下,使用结构化的控制语句(如 break、continue、return)可以使代码更加清晰易读。

04-12 02:56