Thao tác với mảng một chiều C++

0

1.Truy xuất phần tử mảng

Giả sử bạn đã khai báo int a[5]; ta có thể truy xuất đến các phần tử trong mảng này bằng cách sử dụng a[0], a[1], a[2]…Tuy nhiên các số có thể là biến hoặc giá trị của hàm chỉ cần chắc chắn rằng ta xác định được phần tử trong đó.


#include <iostream>
using namespace std;

int add(int x, int y)
{
return x + y;
}

int main()
{
int x[3];
int y = 1;
x[0] = 0;
x[y] = 1;
x[add(y, y)] = 2;
}

Lưu ý

Bạn nên luyện tập các thao tác tốt với mảng để tránh gây ra lỗi vùng nhớ của mảng.

2.Xuất một mảng ra màn hình

Vẫn như xuất bình thường, bạn hãy thử dùng cout như sau:


#include <iostream>
using namespace std;

int main()
{
int x[3] = {1, 2, 3};
cout << x;
}

Kết quả bạn nhận được không như mong đợi, điều này cho thấy rằng muốn xuất một mảng thì ta cần dùng vòng lặp rồi truy xuất đến từng phần tử của mảng như sau:


#include <iostream>
using namespace std;

int main()
{
int x[3] = {1, 2, 3};

for (int j = 0; j < 3; j++)
{
cout << x[j] << endl;
}
}

Bạn sẽ nhận được dãy số mong đợi.

3. Sao chép mảng một chiều

Giả sử bạn có mảng X có 3 phần tử thuộc kiểu integer và muốn có một mảng nữa giống mảng X, hãy thử dùng toán tử =:

 


#include <iostream>
using namespace std;

int main()
{
int x[3] = { 1, 2, 3 };
int y[3];

y = x; // Bao loi
}

 

Chương trình trên sẽ báo lỗi. Như vậy để chép mảng thì ta cũng bắt buộc phải chép từng phần tử của mảng. Đơn giản như sau:


#include <iostream>
using namespace std;

int main()
{
int x[3] = { 1, 2, 3 };
int y[3];

for (int j = 0; j < 3; j++)
{
y[i] = x[i];
}
}

4. Khái niệm truyền mảng vào trong hàm

Tương tự như truyền biến nhưng cần tạo thêm tham số để quản lí việc truy xuất phần tử của mảng


#include <iostream>
using namespace std;

void printArray(int x[], int size)
{
for (int j = 0; j < size; j++)
{
cout << x[j] << endl;
}
}

int main()
{
int x[3] = { 1, 2, 3 };
printArray(x, 3);
}

Leave A Reply

Your email address will not be published.