C++入门教程:第三篇 - 控制结构、函数与数组

C++入门教程:第三篇 - 控制结构、函数与数组

在C++编程中,控制结构、函数和数组是实现复杂逻辑和组织代码的核心工具。掌握这些基础知识能够帮助你编写高效、模块化和可维护的程序。本文将深入探讨C++中的控制结构(条件语句和循环语句)、函数的定义和使用以及数组的基本操作。

1. 控制结构

控制结构用于决定程序的执行路径,包括条件判断和循环操作。理解这些结构是编写复杂程序的基础。

1.1 条件语句

条件语句用于根据条件的真假来决定程序的执行路径。C++提供了几种常见的条件语句。

1.1.1 if 语句

if语句用于根据条件是否成立来执行代码块。如果条件为真,则执行对应的代码块。


cpp

#include <iostream>

using namespace std;

int main() {
    int age = 20;
    if (age >= 18) {
        cout << "You are an adult." << endl;
    }
    return 0;
}

cpp

1.1.2 if-else 语句

if-else语句用于在条件为假时执行另一段代码。


cpp

#include <iostream>

using namespace std;

int main() {
    int age = 16;
    if (age >= 18) {
        cout << "You are an adult." << endl;
    } else {
        cout << "You are a minor." << endl;
    }
    return 0;
}

cpp

1.1.3 else-if 语句

else-if语句用于处理多个条件,选择其中一个符合条件的代码块执行。


cpp

#include <iostream>

using namespace std;

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

cpp

1.2 循环语句

循环语句用于重复执行某段代码,直到满足退出条件。C++支持多种循环结构。

1.2.1 for 循环

for循环用于控制循环次数,通常用于已知次数的循环。


cpp

#include <iostream>

using namespace std;

int main() {
    for (int i = 0; i < 5; ++i) {
        cout << "Iteration " << i << endl;
    }
    return 0;
}

cpp

1.2.2 while 循环

while循环用于在满足条件时重复执行代码。适用于循环次数不确定的情况。


cpp

#include <iostream>

using namespace std;

int main() {
    int count = 0;
    while (count < 5) {
        cout << "Count: " << count << endl;
        ++count;
    }
    return 0;
}

cpp

1.2.3 do-while 循环

do-while循环与while循环类似,但保证至少执行一次循环体,即使条件为假。


cpp

#include <iostream>

using namespace std;

int main() {
    int count = 0;
    do {
        cout << "Count: " << count << endl;
        ++count;
    } while (count < 5);
    return 0;
}

cpp

2. 函数

函数是组织代码的基本单元,通过函数可以将程序分解为更小的部分,每个部分完成特定的任务。函数使代码更加模块化,易于重用和维护。

2.1 函数定义

函数的定义包括函数名、返回类型、参数列表和函数体。以下是一个简单的函数定义示例:


cpp

#include <iostream>

using namespace std;

// 函数声明
void greet();

int main() {
    greet(); // 调用函数
    return 0;
}

// 函数定义
void greet() {
    cout << "Hello, welcome to C++ programming!" << endl;
}

cpp

2.1.1 带返回值的函数

函数可以返回一个值,返回类型可以是基本数据类型、对象或指针。


cpp

#include <iostream>

using namespace std;

// 函数声明
int add(int a, int b);

int main() {
    int result = add(5, 3); // 调用函数并获取返回值
    cout << "Sum: " << result << endl;
    return 0;
}

// 函数定义
int add(int a, int b) {
    return a + b;
}

cpp

2.1.2 带参数的函数

函数可以接收参数,用于传递数据。


cpp

#include <iostream>

using namespace std;

// 函数声明
void displayMessage(string message);

int main() {
    displayMessage("Hello, C++!"); // 调用函数并传递参数
    return 0;
}

// 函数定义
void displayMessage(string message) {
    cout << message << endl;
}

cpp

2.2 函数重载

C++支持函数重载,即可以定义多个同名但参数不同的函数。


cpp

#include <iostream>

using namespace std;

// 函数声明
int multiply(int a, int b);
double multiply(double a, double b);

int main() {
    cout << "Product (int): " << multiply(4, 5) << endl;
    cout << "Product (double): " << multiply(4.5, 5.5) << endl;
    return 0;
}

// 函数定义
int multiply(int a, int b) {
    return a * b;
}

double multiply(double a, double b) {
    return a * b;
}

cpp

3. 数组

数组是存储相同类型数据的集合,支持通过索引访问每个元素。数组在C++中是处理一组数据的常用方法。

3.1 数组的定义和初始化

数组的定义包括类型、名称和大小。数组的初始化可以在定义时完成,也可以在之后的操作中进行。


cpp

#include <iostream>

using namespace std;

int main() {
    // 定义并初始化数组
    int numbers[5] = {1, 2, 3, 4, 5};

    // 输出数组元素
    for (int i = 0; i < 5; ++i) {
        cout << "Element " << i << ": " << numbers[i] << endl;
    }

    return 0;
}

cpp

3.2 多维数组

C++支持多维数组,如二维数组用于存储表格数据。


cpp

#include <iostream>

using namespace std;

int main() {
    // 定义并初始化二维数组
    int matrix[2][3] = {
        {1, 2, 3},
        {4, 5, 6}
    };

    // 输出二维数组元素
    for (int i = 0; i < 2; ++i) {
        for (int j = 0; j < 3; ++j) {
            cout << "Element [" << i << "][" << j << "]: " << matrix[i][j] << endl;
        }
    }

    return 0;
}

cpp

3.3 动态数组

动态数组使用指针和new关键字创建,允许在运行时确定数组大小。


cpp

#include <iostream>

using namespace std;

int main() {
    int size;
    cout << "Enter the size of the array: ";
    cin >> size;

    // 创建动态数组
    int* dynamicArray = new int[size];

    // 输入数组元素
    for (int i = 0; i < size; ++i) {
        cout << "Enter element " << i << ": ";
        cin >> dynamicArray[i];
    }

    // 输出数组元素
    for (int i = 0; i < size; ++i) {
        cout << "Element " << i << ": " << dynamicArray[i] << endl;
    }

    // 释放动态数组
    delete[] dynamicArray;

    return 0;
}

cpp

4. 总结

本文介绍了C++中的控制结构(条件语句和循环语句)、函数的定义与使用以及数组的基本操作。这些知识对于编写功能丰富的程序至关重要,能够帮助你组织和管理代码,提高程序的可读性和可维护性。在下一篇教程中,我们将深入探讨C++中的面向对象编程,包括类和对象的定义和使用。

希望这篇文章对你有所帮助。如果你有任何问题或建议,欢迎在评论区留言。我们下篇文章见!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值