Mảng một chiều trong C#

Mảng (array) là tập hợp các phần tử có cùng một kiểu dữ liệu. Ví dụ như mảng chuỗi, mảng số v.v

Mảng là kiểu dữ liệu thường xuyên được sử dụng, ví dụ để lưu trữ họ tên của các học sinh trong 1 lớp, ta sử dụng một mảng kiểu string để lưu trữ thay vì tạo hàng chục biến kiểu string.

Mảng một chiều (one dimensional array) là  tập hợp các phần tử hữu hạn , có cùng một kiểu dữ liệu, nằm liên tiếp nhau.

Có thể hình dung mảng một chiều như sau.

 

Một dãy liên tiếp  n các phần tử trong bộ nhớ, với số thứ tự (index) từ 0  đến n - 1.

Để khai báo một mảng ta làm như sau.

kiểuDữLiệu[] tênMảng;
type[] arrayName;

Để khởi tạo mảng, ta dùng cú pháp như sau.

kiểuDữLiệu[] tênMảng = new kiểuDữLiệu[Số phần tử tối đa trong mảng];
kiểuDữLiệu[] tênMảng = new kiểuDữLiệu[]{ phần tử mảng 1…  phần tử mảng n};

Lưu ý: 

  • Khi khởi tạo một mảng ta phải truyền cho mảng đó số phần tử tối đa của mảng.
  • Mảng chỉ sử dụng được sau khi khởi tạo

Ví dụ:

static void Main(string[] args)
{
    string[] names = new string[2];
    string[] names1 = new string[] { "Cong Phuong", "Luong Xuan Truong" };
}

Mảng names được khai báo với số lượng phần tử tối đa là 2.
Mảng names1 được khai báo với 2 phần tử là “Cong Phuong”, “Luong Xuan Truong” do vậy, C# sẽ hiểu mảng names 1 có tối đa 2 phần tử.

Truy xuất mảng: để truy xuất một phần tử trong mảng, bạn chỉ cần lấy số thứ tự (index) của phần tử đó. Phần tử đầu tiên sẽ có index = 0, phần tử cuối cùng sẽ có index = chiều dài mảng -1.

static void Main(string[] args)
{
    string[] names = new string[3];
    //phần tử đầu tiên có số thứ tự (index) là 0
    names[0] = "Ronaldo";
    names[1] = "Messi";
    //phần tử cuối cùng có số thứ tự (index) là bằng độ dài mảng - 1
    names[2] = "Ibra";
    //lỗi, truy xuất vượt mảng
    names[3] = "Ramos";
}

Ở ví dụ trên mảng names có 3 phần tử.

Để truy xuất phần tử đầu tiên ta dùng index = 0.
Để truy xuất phần tử cuối cùng, ta dùng index = độ dài mảng – 1 = 2.
Riêng names[3] = “Ramos” khi chạy sẽ gây ra lỗi vì truy xuất vượt độ dài mảng (index out of range exception).

Ví dụ, tạo mảng có 2 phần tử, nhập giá trị nhập vào từ người dùng cho 2 phần tử này và xuất ra kết quả.

static void Main(string[] args)
{
    string[] names = new string[2];
    Console.WriteLine("nhap vao gia tri cho phan thu thu 1");
    names[0] = Console.ReadLine();
    Console.WriteLine("nhap vao gia tri cho phan thu thu 2");
    names[1] = Console.ReadLine();
    Console.WriteLine("Ban Da Nhap Vao " + names[0] + " Va " + names[1]);
    Console.ReadLine();
}

Phân tích ví dụ:

  • Bước 1: tạo mảng kiểu chuỗi có 2 phần tử.
  • Bước 2: yêu cầu người dùng nhập vào phần tử thứ nhất(index = 0)
  • Bước 3: nhận giá trị người dùng nhập từ bàn phím và gán cho phần tử thứ nhất (index = 0)
  • Bước 4: yêu cầu người dùng nhập vào phần tử thứ hai (index = 1)
  • Bước 4: nhận giá trị người dùng nhập từ bàn phím và gán cho phần tử thứ hai (index = 1)
  • Bước 5: xuất giá trị người dùng nhập vào.

Các môn học khác

Khóa học này cung cấp cho ta kiến thức nền tảng về công nghệ Blockchain, Bitcoin. Vì sao nó được gọi là công nghệ của tương lai, vì sao giá Bitcoin lại cao đến vậy. Làm sao để mua Bitcoin, ETH.

SQL là ngôn ngữ truy vấn mang tính cấu trúc, nó cho phép bạn truy cập và sử dụng database.

Chương trình thường được xây dựng quanh dữ liệu và logic để xử lý chúng. Nói cách khác: Program = Cấu trúc dữ liệu + giải thuật. Do vậy đây là môn học bắt buộc dành cho các lập trình viên.