Bài giảng "Ngôn ngữ lập trình C - Chương 3: Mảng và con trỏ" cung cấp cho người học các kiến thức: Mảng, con trỏ, liên hệ giữa mảng và con trỏ, cấp phát bộ nhớ động, xâu ký tự. Đây là một tài liệu hữu ích dành cho các bạn sinh viên ngành Công nghệ thông tin dùng làm tài liệu học tập và nghiên cứu. | Bài giảng Ngôn ngữ lập trình C: Chương 3 - TS. Nguyễn Thị Hiền Ngôn ngữ lập trình C Chương 3 – Mảng và con trỏ . Mảng . Con trỏ . Liên hệ giữa mảng và con trỏ . Cấp phát bộ nhớ động . Xâu ký tự . Mảng Mảng là tập hợp các giá trị cùng kiểu dữ liệu Khai báo: ; Mỗi phần tử của mảng lưu trữ 1 giá trị. Mỗi một phần tử của mảng được coi như 1 biến. Có bao nhiêu kiểu biến thì có bấy nhiêu kiểu mảng. . Mảng Số chiều và kích thước của mảng Ví dụ các khai báo: int a[10],b[4][2]; float x[5],y[3][3]; Khi đó ta có: Thứ tự Tên mảng Kiểu mảng Số chiều Kích thước Các phần tử 1 a int 1 10 a[0],a[1],a[2].a[9] b[0][0], b[0][1] b[1][0], b[1][1] 2 b int 2 4x2 b[2][0], b[2][1] b[3][0], b[3][1] 3 x float 1 5 x[0],x[1],x[2].x[4] y[0][0], y[0][1], y[0][2] 4 y float 2 3x3 y[1][0], y[1][1], y[1][2] y[2][0], y[2][1], y[1][2] . Mảng Một số lưu ý Các phần tử của mảng được cấp phát trong các khoảng nhớ liên tiếp trong bộ nhớ. Một phần tử cụ thể của mảng được xác định thông qua tên mảng và chỉ số của nó. Chỉ số của mảng phải có kiểu nguyên, không vượt quá kích thước mảng. Chỉ số của mảng bắt đầu từ 0. Khi chỉ số vượt ra ngoài kích thước mảng, trình biên dịch vẫn biên dịch thành công, tuy nhiên khi thực hiện chương trình sẽ có lỗi. Kích thước của mảng phải là một hằng số. . Mảng Khởi tạo giá trị ban đầu cho biến mảng Để khởi tạo giá trị ban đầu cho biến mảng, ta có thể sử dụng biểu thức hằng hoặc các câu lệnh gán. Ví dụ: float x[6] = {}; float y[6] = {}; int z[3][2] = {{25,31},{12,13},{45,15}}; Khikhởi tạo giá trị ban đầu cho biến mảng, có thể không cần chỉ ra kích thước mảng. Ví dụ: float a[]={0,}; int m[][3]={{25,31,4},{12,13,89},{45,15,22}}; . Mảng Một số thao tác cơ bản đối với mảng Duyệt mảng (nhập, xuất, tính tổng, .) Tìm kiếm Tìm xem một phần tử nào đó có thuộc mảng hay không? Tìm các phần tử thỏa mãn .