Введение в массивы

C++C++Beginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

Массив - это коллекция элементов, хранящихся в последовательных ячейках памяти. Каждый элемент массива можно получить, используя его индекс. В этом практическом занятии мы научимся создавать и манипулировать массивами на C++.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL cpp(("C++")) -.-> cpp/ControlFlowGroup(["Control Flow"]) cpp(("C++")) -.-> cpp/SyntaxandStyleGroup(["Syntax and Style"]) cpp(("C++")) -.-> cpp/StandardLibraryGroup(["Standard Library"]) cpp(("C++")) -.-> cpp/BasicsGroup(["Basics"]) cpp(("C++")) -.-> cpp/IOandFileHandlingGroup(["I/O and File Handling"]) cpp/BasicsGroup -.-> cpp/variables("Variables") cpp/BasicsGroup -.-> cpp/data_types("Data Types") cpp/BasicsGroup -.-> cpp/arrays("Arrays") cpp/ControlFlowGroup -.-> cpp/conditions("Conditions") cpp/ControlFlowGroup -.-> cpp/for_loop("For Loop") cpp/IOandFileHandlingGroup -.-> cpp/output("Output") cpp/IOandFileHandlingGroup -.-> cpp/user_input("User Input") cpp/StandardLibraryGroup -.-> cpp/standard_containers("Standard Containers") cpp/SyntaxandStyleGroup -.-> cpp/code_formatting("Code Formatting") subgraph Lab Skills cpp/variables -.-> lab-96237{{"Введение в массивы"}} cpp/data_types -.-> lab-96237{{"Введение в массивы"}} cpp/arrays -.-> lab-96237{{"Введение в массивы"}} cpp/conditions -.-> lab-96237{{"Введение в массивы"}} cpp/for_loop -.-> lab-96237{{"Введение в массивы"}} cpp/output -.-> lab-96237{{"Введение в массивы"}} cpp/user_input -.-> lab-96237{{"Введение в массивы"}} cpp/standard_containers -.-> lab-96237{{"Введение в массивы"}} cpp/code_formatting -.-> lab-96237{{"Введение в массивы"}} end

Подключить необходимые библиотеки и определить пространство имен

Мы создадим новый файл с именем main.cpp в каталоге ~/project с помощью следующей команды:

touch ~/project/main.cpp

Начнем с подключения необходимых библиотек и определения пространства имен std с помощью инструкции using namespace std;.

#include <iostream>
using namespace std

Объявить и инициализировать массив

В этом шаге мы объявим массив целочисленного типа и инициализируем его некоторыми значениями.

int main()
{
    int arr[5] = {8, 2, 3, 7, 1};
}

Доступ к элементам массива

В этом шаге мы будем получать доступ к элементам массива с использованием их индексов. Здесь мы выведем на экран первый элемент массива.

int main()
{
    int arr[5] = {8, 2, 3, 7, 1};
    cout << "The first element of the array is: " << arr[0] << endl;
}

Изменение элементов массива

В этом шаге мы изменим элемент в массиве, присвоив ему новое значение. Здесь мы заменим второй элемент массива на новое значение 5.

int main()
{
    int arr[5] = {8, 2, 3, 7, 1};

    // modifying second element of array
    arr[1] = 5;

    cout << "The modified array is: ";
    for (int i = 0; i < 5; i++)
    {
        cout << arr[i] << " ";
    }
    cout << endl;
}

Ввод элементов массива от пользователя

В этом шаге мы будем получать элементы массива в качестве ввода от пользователя. Сначала мы попросим пользователя ввести количество элементов, которое они хотят ввести. Затем мы создадим массив такого размера и заполним его вводом пользователя.

int main()
{
    int n;

    cout << "Enter the number of elements: ";
    cin >> n;

    int arr[n];

    cout << "Enter " << n << " elements: ";
    for (int i = 0; i < n; i++)
    {
        cin >> arr[i];
    }

    cout << "The elements of the array are: ";
    for (int i = 0; i < n; i++)
    {
        cout << arr[i] << " ";
    }
    cout << endl;
}

Сортировка массива

В этом шаге мы отсортируем массив по возрастанию с использованием алгоритма сортировки методом «пузырька». Этот алгоритм работает путём повторённого обмена соседних элементов, если они находятся в неправильном порядке.

int main()
{
    int arr[] = { 5, 7, 4, 6, 2 };

    int n = sizeof(arr) / sizeof(arr[0]);

    // Bubble Sort Algorithm
    for (int i = 0; i < n - 1; i++)
    {
        for (int j = 0; j < n - i - 1; j++)
        {
            if (arr[j] > arr[j + 1])
            {
                int temp = arr[j];
                arr[j] = arr[j + 1];
                arr[j + 1] = temp;
            }
        }
    }

    cout << "The sorted array is: ";
    for (int i = 0; i < n; i++)
    {
        cout << arr[i] << " ";
    }
    cout << endl;
}

Для запуска кода в терминале:

g++ main.cpp -o main
./main

Резюме

В этом практическом занятии были рассмотрены основы работы с массивами в C++. Мы узнали, как создавать и инициализировать массив, получать доступ к его элементам и изменять их, получать ввод от пользователя и сортировать массив с использованием простого алгоритма сортировки методом «пузырька». С этими знаниями вы должны быть в состоянии эффективно создавать и манипулировать массивами в C++.